안드로이드 개발 질문/답변
(글 수 45,052)
버튼을 클릭하면 다이알로그가 뜨고
다이알로그에는 리소스에서 가져온 이름들을 죽~ 넣어줍니다.
제가 하려고 했던것은 다시 이 다이알로그를 띄웠을 때 체크상태가 초기화 즉 아무것도 체크가 되어있지 말아야 하는데
그 전에 체크했던그대로 체크가 되어있어요.
아무리 찾아봐도 이걸 어떻게 해결을 해야 할지 모르겠네요. ㅠ.ㅜ
protected Dialog onCreateDialog(int id)
{
switch(id) {
case SelectBlueMemberDialog:
return new AlertDialog.Builder(this)
.setTitle("청팀 선택 (2명까지만 허용)")
.setIcon(R.drawable.pingpang)
.setMultiChoiceItems(R.array.members, mSelect,
new DialogInterface.OnMultiChoiceClickListener() {
public void onClick(DialogInterface dialog, int which, boolean isChecked) {
mSelect[which] = isChecked;
}
})
.setPositiveButton("확인", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
String[] members = getResources().getStringArray(R.array.members);
String[] result = new String[9];
int count =0;
for(int i=0; i<mSelect.length; i++) {
if(mSelect[i]) {
result[count++] = members[i];
}
}
if(count<=2) {
mBlueMember1.setText(result[0]);
mBlueMember2.setText(result[1]);
}
}
})
.setNegativeButton("취소", null)
.create();
}
return null;
}
2011.10.31 11:24:52
@Override
protected void onPrepareDialog(int id, Dialog dialog, Bundle args) {
super.onPrepareDialog(id, dialog, args);
}
요기 함수는 dialog가 재 사용될때 불려지는 함수임 여기 dialog가 기존에 있는 건데 여기다가 check 새팅을 다시하던가
아니면 dialog를 새로 할당 하세요.
2011.10.31 15:38:29
감사합니다. 그런데 두가지 방법으로 다 해봤는데 어디가 잘못된건지 여전히 문제가 있어요.
1. check 설정을 다시 하는 방법
onPrepareDialog() 요 함수 안에
.setMultiChoiceItems
.setPositiveButton 요렇게 두 부분만 넣어주었는데 오류가 나요. dialog.setMultiChoiceItems 이렇게 사용이 안됩니다.
2. 새로 dialog를 할당하는 방법
onPrepareDialog() 요 함수 안에 아래와 같이 두줄 추가했는데 역시 안되네요.
AlertDialog.Builder bld = new AlertDialog.Builder(this);
bld.show();
초보라 잘 몰라서 그러는데 제가 무엇을 잘못알고 있나요?



