Consulte el cuadro de diálogo personalizado a continuación. Tengo un campo de texto de edición en el diálogo y si el campo de texto está vacío, me gustaría deshabilitar el archivo positiveButton
. Puedo obtener un charListener para el campo de texto, pero no estoy seguro de cómo voy a configurar positivebutton
para deshabilitar o habilitar desde ese oyente. ¿Cuál es la referencia para los botones positivos y negativos?
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();
}
Respuestas:
Editar para una solución completa ...
Aquí hay un código de muestra, intente esto
Para botón negativo
Para la identificación de los botones : referencia alert_dialog.xml
Editado:
Y el setOnShowListener desde el nivel 8 API (FroYo), hace lo mismo,
Editado
fuente
Ninguna de estas respuestas realmente resuelve el problema.
Lo logro usando un diseño personalizado con un EditText y un TextWatcher en esa vista.
fuente
d
Aquí está el código completo para habilitar y deshabilitar el botón positivo del diálogo:
fuente
Puede escribir un oyente en el cuadro de texto de edición e intentar habilitar o deshabilitar botones. Este es un código de muestra para xamarin.
fuente
Para eliminar el registro de la vista de lista de la base de datos usando el titular de la vista, usó este código en su método getview ().
Lee mas
fuente
Este dialogFragment hará el trabajo por usted. Tenga en cuenta que el cuadro de diálogo permanecerá abierto después de la rotación de la pantalla conservando cualquier texto que el usuario ya haya escrito. Si no desea que eso suceda, debe descartar el fragmento en el onStop de su actividad. La firma del método newInstance se puede cambiar a lo que necesite.
Agregue implementos a su actividad (cualquier tipo de actividad está bien):
Cree el diaglogFragment en su actividad de esta manera:
Maneje el resultado en su actividad de esta manera:
Necesita crear el identificador de recursos, así que agregue este recurso en algún lugar debajo de res / valores
fuente
Eso podría ayudarte, gracias.
fuente