каком контексте я должен использовать AlertDialog.В Builder?
может кто-нибудь объяснить, в каком контексте я должен использовать AlertDialog.Класс строителей? Я новичок в разработке приложений для android, и я, честно говоря, не понимаю, какой контекст использовать, когда?
скажем, я хочу создать объект для AlertDialog.Класс строителя -
AlertDialog.Builder ab = new AlertDialog.Builder();
ab.setMessage("Test");
ab.show();
в каком контексте я должен его использовать? Отличается ли это, если я использую диалоговое окно Alert onCreate
или OnClickListener
или в обработчике любого такого события?
3 ответов
в первой версии моего приложения я сделал ошибку, не используя onCreateDialog и вместо этого построил и показал диалоги сам. Если вы делаете это сами, вам нужно позаботиться о таких вещах, как отклонение диалога до завершения действия (), иначе окно будет протекать.
Я бы переопределил onCreateDialog в вашей деятельности и вернул ab.create () (не показывать ()). onCreateDialog будет обрабатывать отображение диалога, и вам просто нужно вызвать showDialog(id).
вы должны использовать контекст действия, из которого оно выполняется. Другими словами, просто используйте YourNameOfActivity.this
в качестве контекста.
AlertDialog.Builder ab = new AlertDialog.Builder(this);
ab.setMessage("Test")
.show;
(или) если вы хотите (да,нет) кнопка означает использовать это
AlertDialog.Builder ab = new AlertDialog.Builder(this);
ab.setMessage("Are you sure you want to exit?")
.setPositiveButton("Yes", dialogClickListener)
.setNegativeButton("No", dialogClickListener)
.show();