2011-01-22 9 views
2

내 응용 프로그램에 일종의 설정 윈도우 역할을하는 popupwindow가 있습니다. 이것의 내부에는 체크 박스와 같은 몇 가지 작은보기가있을 것이고, 그렇지 않을 것입니다.하지만 문제가 발생하여 제대로 작동하는 것 같습니다.안드로이드 단추 Inside PopupWindow

현재 뷰어에 풍선이 하나 뿐이고 팝업 창을 닫으려는 중 하나의 버튼이 있지만 onClickListener를 설정하려고 할 때 NullPointerException이 발생합니다. 사실, "button.isShown()"과 같은 것에서조차도 버튼을 참조하면 버튼이 존재하지 않는 것처럼 예외가 발생합니다.

내가 생각할 수있는 모든 것을 시도했지만 아무 것도이 문제를 해결하지 못합니다. PopupWindow 내부에서 작동하는 버튼이있는 방법이 있다고 가정하거나, 이후에 효과를 얻기 위해 어떤 형태의 대화 상자를 수정해야합니까?

도움 주셔서 감사합니다.

답변

2

DialView.findViewById (id)를 사용하고있는 findViewById (R.id.yourButton)를 호출 할 때 버튼의 주 레이아웃을보고 제대로 찾지 못하는지 확인하십시오. 참조를 사용할 때 NullPointers.

편집 : 여기에 내가 내가 할 수있는 일을 쉽게 유지하고 싶어

AlertDialog.Builder builder = new AlertDialog.Builder(this) 
    .setView(layout); 
    alertDialog = builder.create(); 
    alertDialog.show(); 
    button = (Button) alertDialog.findViewById(R.id.yourButton); 
+0

이 더 명확하게하기 위해 돔 코드입니다,하지만 난 내가 원하는 모든 권한을 얻을 수있는 새로운 클래스에 대화 상자를 확장 끝났다 . 귀하의 게시물은 나를 시작하기에 매우 도움이되었습니다. 대단히 감사합니다. – Chance