[Android] 다이얼로그(Dialog) 닫기 방지. 닫히지 않게 하기.

Posted by Find my true self Fimtrus
2013.12.17 17:02 Programming/Android

다이얼로그로 로그인 화면이나, 비밀번호 입력창 등을 만들기도 한다.

가장 많이 사용 하는 것이 AlertDialog.Builder 를 사용할텐데, 

기존에 제공하는 리스너들을 Overriding 해서 사용할 경우

Ok, Cancel 버튼 클릭시 원하지 않게 창이 닫기게 된다.

아래의 방지코드를 넣게 되면 창이 닫기지 않게 된다.


dialog.setOnShowListener(new DialogInterface.OnShowListener() {
    @Override
    public void onShow(DialogInterface arg0) {
        Button positiveButton = ( (AlertDialog) arg0 ).getButton(AlertDialog.BUTTON_POSITIVE); 
        //Or AlertDialog.BUTTON_NEGATIVE
        positiveButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                //=========================
            }
        });
    }
});

확인 버튼과 취소 버튼에 대한 리스너를 달아주면 끝!

닫히지 않는 다이얼로그를 볼 수 있다.(닫을때 dismiss 하는 걸 잊으면 안돼요~)

AlertDialog.Builder 를 사용하면 create()를 실행하여 반드시 AlertDialog 객체를 생성한 뒤에 사용해야 setOnShowListener를 볼 수 있다.

이 댓글을 비밀 댓글로

[Android] ActionBarImpl 에러. Dialog 에러

Posted by Find my true self Fimtrus
2013.05.14 10:19 Programming/Android

안드로이드에서 스타일을 지정하였을때(특히 다이얼로그)

ICS 미만 버전에서는 이상없이 동작하다가, 이상부터 문제가 발생되는 경우가 있다.

ICS 이상버전부터는 스타일을 지정할 때, parent를 설정하도록 되어 있다.

parent가 설정되지 않았을 경우, 상위 스타일을 알 수 없기 때문에, 파서에서 에러를 발생시킨다.



이 댓글을 비밀 댓글로