안드로이드 개발 질문/답변
(글 수 45,052)
ㅠ.ㅠ...인터넷보면서 체크박스 따라쓰려는데 잘 안됩니다...예전에 써본적 있었는데 정리를 안해놨더니 이런일이 발생하네요...굴욕 ㅠ.ㅠ..
public class setup extends Activity implements CompoundButton.OnCheckedChangeListener{
CheckBox check;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.setup);
radio = (RadioGroup)findViewById(R.id.radioGroup1);
radio.setOnCheckedChangeListener(mradiocheck);
Button btnstart = (Button)findViewById(R.id.btnstart);
btnstart.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
EditText name1 = (EditText)findViewById(R.id.name1);
EditText name2 = (EditText)findViewById(R.id.name2);
CheckBox check = (CheckBox)findViewById(R.id.check);
check.setOnCheckedChangeListener(this);
Intent intent = new Intent(setup.this, Score.class);
if(name1.getText().toString().equals("")) intent.putExtra("name1", Teamname1);
else intent.putExtra("name1", name1.getText().toString());
if(name2.getText().toString().equals("")) intent.putExtra("name2", Teamname2);
else intent.putExtra("name2", name2.getText().toString());
intent.putExtra("score", score);
startActivity(intent);
finish();
}
});
}
RadioGroup.OnCheckedChangeListener mradiocheck = new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
if(group.getId()==R.id.radioGroup1);
{
if(checkedId == R.id.radio2){
score = "3";
}
else if(checkedId == R.id.radio3){
score = "5";
}
else score="1";
}
}
};
CheckBox check;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.setup);
radio = (RadioGroup)findViewById(R.id.radioGroup1);
radio.setOnCheckedChangeListener(mradiocheck);
Button btnstart = (Button)findViewById(R.id.btnstart);
btnstart.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
EditText name1 = (EditText)findViewById(R.id.name1);
EditText name2 = (EditText)findViewById(R.id.name2);
CheckBox check = (CheckBox)findViewById(R.id.check);
check.setOnCheckedChangeListener(this);
Intent intent = new Intent(setup.this, Score.class);
if(name1.getText().toString().equals("")) intent.putExtra("name1", Teamname1);
else intent.putExtra("name1", name1.getText().toString());
if(name2.getText().toString().equals("")) intent.putExtra("name2", Teamname2);
else intent.putExtra("name2", name2.getText().toString());
intent.putExtra("score", score);
startActivity(intent);
finish();
}
});
}
RadioGroup.OnCheckedChangeListener mradiocheck = new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
if(group.getId()==R.id.radioGroup1);
{
if(checkedId == R.id.radio2){
score = "3";
}
else if(checkedId == R.id.radio3){
score = "5";
}
else score="1";
}
}
};
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked){
if(isChecked) checkflag = 1;
else checkflag = 0;
}
}
if(isChecked) checkflag = 1;
else checkflag = 0;
}
}
라디오그룹은 이전에 해놨던건데 잘 되는데.
체크박스 쓰려고 인터넷찾아서 따라하는데 빨간색부분이 에러가 납니다...라디오그룹할때도 저랬던걸로 기억해서 라디오그룹처럼 소스를 비슷하게 배껴봐도 다른데서 에러가나서 실패하고...--; 창피하지만 질문올립니다 ㅠ.ㅠ




에러가 난다는 말씀이, 빌드는 되는데 오류로 죽는다는 말씀이신가요?
아니면, 빌드조차 안된다는 말씀이신가요.. 제가볼때는 빌드는 될꺼 같은데요.. 빌드는 되는데 죽는 문제면, 사실 동작하는데는 문제 없어보이지만,
check가 null값 일 수 있습니다. 이말은, 곧 check = (CheckBox)findViewById(R.id.check) 를 제대로 못가져오는 문제겠죠? 빌드가 되신다면,
타이틀 메뉴에서 project > clearn 한번 실행 해보세요. 혹 R.id.check가 R.java에 제대로 등록되지 않은 문제일 수 있습니다.