ListView에 표시용 값을 입력하고
버튼 눌러서 호출 될 때 마다 AlertDialog에 리스트를 설정하는 코드를 만들었다.
요런 느낌.
실행해 보니...
Exception! 왜!! Why!
...
Android의 ViewGroup, 그 계승 클래스들은 한번 설정된 부모를 멋대로 바꿀 수 없도록 되어있었다. 쿨럭.
가령, 요번같은 경우는 Layout의 부모를 찾아(getParent())
fontListView를 제거해준 후(removeView()),
dialog아래에 다시 추가 해 줘야 한다는걸 알게되었당...
아... 이래서 모르면 안된다는거야... 쿨럭..
버튼 눌러서 호출 될 때 마다 AlertDialog에 리스트를 설정하는 코드를 만들었다.
dialog = new AlertDialog.Builder(this)
.setTitle(R.string.fontDialogTitle)
.setCancelable(false)
.setPositiveButton(R.string.fontDialogBtn,
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.dismiss();
dialogClickListener(dialog, which);
}
})
.setView(fontListView /* 어딘가에서 생성해 둔 ListView */)
.create();
실행해 보니...
Caused by: java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first.
...
Android의 ViewGroup, 그 계승 클래스들은 한번 설정된 부모를 멋대로 바꿀 수 없도록 되어있었다. 쿨럭.
가령, 요번같은 경우는 Layout의 부모를 찾아(getParent())
fontListView를 제거해준 후(removeView()),
dialog아래에 다시 추가 해 줘야 한다는걸 알게되었당...
아... 이래서 모르면 안된다는거야... 쿨럭..