Пожалуйста, посмотрите на настраиваемый диалог ниже. У меня есть поле редактирования текста в диалоговом окне, и если текстовое поле пусто, я бы хотел отключить расширение positiveButton
. Я могу получить charListener для текстового поля, но я не уверен, как я собираюсь positivebutton
отключить или включить для этого слушателя? Каковы ссылки для положительных и отрицательных кнопок?
case DIALOG_TEXT_ENTRY:
// This example shows how to add a custom layout to an AlertDialog
LayoutInflater factory = LayoutInflater.from(this);
final View textEntryView = factory.inflate(R.layout.alert_dialog_text_entry, null);
return new AlertDialog.Builder(AlertDialogSamples.this)
.setIconAttribute(android.R.attr.alertDialogIcon)
.setTitle(R.string.alert_dialog_text_entry)
.setView(textEntryView)
.setPositiveButton(R.string.alert_dialog_ok, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
/* User clicked OK so do some stuff */
}
})
.setNegativeButton(R.string.alert_dialog_cancel, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
/* User clicked cancel so do some stuff */
}
})
.create();
}
Ответы:
Изменить для полного решения ...
Вот пример кода, попробуйте это
Для отрицательной кнопки
Для идентификаторов кнопок : ссылка alert_dialog.xml
Отредактировано:
И setOnShowListener, начиная с уровня 8 API (FroYo), делает то же самое,
Отредактировано
источник
Ни один из этих ответов не решает проблему.
Я делаю это с помощью настраиваемого макета с EditText в нем и TextWatcher в этом представлении.
источник
d
Вот полный код для включения и отключения положительной кнопки диалога:
источник
Вы можете написать слушателя в текстовое поле редактирования и попытаться включить или отключить кнопки. Это пример кода для xamarin.
источник
Для удаления записи из представления списка базы данных с помощью держателя представления вы использовали этот код в своем методе getview () ..
Читать далее
источник
Этот dialogFragment сделает всю работу за вас. Обратите внимание, что диалоговое окно останется открытым после поворота экрана с сохранением любого текста, который пользователь уже ввел. Если вы не хотите, чтобы это произошло, вам нужно отклонить фрагмент в onStop вашей операции. Подпись метода newInstance может быть изменена на все, что вам нужно.
Добавьте к своей деятельности орудия (подойдет любой вид деятельности):
Создайте diaglogFragment в своей деятельности следующим образом:
Обработайте результат своей деятельности следующим образом:
Вам нужно создать идентификатор ресурса, поэтому добавьте этот ресурс где-нибудь под res / values
источник
Это может вам помочь, спасибо.
источник