본문 바로가기

나의 플랫폼/안드로이드

[ Android ] Dialog Button 제어

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
Dialog( Listpreferece 와 같은)를 사용할 때 ,

AlertDialog를 사용하여 ok버튼등을 제어했었다..

그 전엔... ClickedListener만 설정하면 자동적으로  버튼이 제어 되어 

별로 신경을 쓰고 있지 않았다.

AlertDialog alert = new AlertDialog.Builder( this )
	.setIcon( R.drawable.icon )
	.setTitle( "AlertTitle" )
	.setMessage( "AlertMessage" )
	.setPositiveButton( "OK", new DialogInterface.OnClickListener()
	{
		@Override
		public void onClick(DialogInterface dialog, int which)
		{
			dialog.dismiss();
		}
	})
	.show();

출처:  http://neodreamer.tistory.com/411 

위와 같은 경우 OK Button 하나만 생성이 되게 된다.

하지만, 예를 들어 이미 OK,Cancel이 설정되어 있는 Builder에서 

어떻게 Button을 제어 할까가 의문이다.

이런 상황에서는 Listener만 설정한다고 Button이 제어 되지 않는다.

따라서, 아래와 같은 방법을 쓰면 된다. 

builder : Builder 클래스 일 경우, AlertDialog.Builder로 Casting 한 변수

builder.setPositiveButton(null, null);


양 매개 변수에 대해 null 값을 넣을 경우 OK 버튼이 보이지 않는다.


이 한 줄 때문에.. 저는 거의 3시간을 헤매고.. 야근을 했다능;;;;;

그럼 저 같은 피해가 안생기길 바라며 글을 남깁니다. ㅎ