AlertDialog.Builder의 유체 인터페이스를 사용하고 싶습니다. 그러나 DismissListener 및 ShowListener를 추가 할 시점에 도달했을 때 작성자에게 create()를 수행 한 후 중단하고 대화 상자 객체에 추가해야합니다. 아무도 왜 거기에 있지 않은지 아는 사람 있습니까? 나는 사립 P 회원 때문에 그것을 연장 할 수 없다 ... 그것은 세상이나 다른 것의 끝이 아니며, 왜 그것이 거기에 없는지 궁금하다. API 레벨 17에서AlertDialog.Builder에 setOnDismissListener 또는 setOnShowListener 메서드가없는 이유는 무엇입니까?
5
A
답변
1
당신은 내가 .. 내 .create() 호출 후에 추가 할 것을
7
당신은이 방법을 봤어 ..
AlertDialog dlg = builder.create();
lg.setOnDismissListener(new DialogInterface.OnDismissListener() {
@Override
public void onDismiss(final DialogInterface dialog) {
//Do some work
}
});
return dlg;
예, 제가 언급
setOnDismissListener (DialogInterface.OnDismissListener onDismissListener)
방법을 사용할 수 있습니다 새로운 AlertDialog.Builder (ctx) .setTitle (제목) .setMessage (msg) .setPositiveButton (buttonTitle, listener) .setDismissListener (dismissListener) .show() – danb@danb 당신은 create()를 호출하지만 Builder 객체를 호출합니까? 그게 효과가 없을거야. create()는 Builder가 AlertDialog를 제공하는 방법이지만 Builder 객체 자체에는 리스너를 설정하는 메소드가 없습니다. – LuxuryMode
빌더에는 청취자를 설정하는 여러 가지 방법이 있지만 여기서는 두 가지를 언급하지 않습니다. 그것은 setOnCancelListener, setOnItemSelectedListener 및 setOnKeyListener를가집니다. 왜 API가 불완전한 것일까 궁금합니다. – danb