Estoy creando un diálogo personalizado que contiene un EditarTexto para que pueda obtener los datos de texto del usuario:problema de diálogo: requestFeature() debe ser llamado antes de añadir contenido
final EditText newKey = (EditText) findViewById(R.id.dialog_result);
AlertDialog.Builder keyBuilder = new AlertDialog.Builder(StegDroid.this);
keyBuilder
.setCancelable(false)
.setPositiveButton("Try Again", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
Log.v("Dialog","New Key: "+newKey.getText().toString());
}
})
.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
dialog.cancel();
}
});
AlertDialog dialog = keyBuilder.create();
dialog.setTitle("Decryption Failed");
dialog.setContentView(R.layout.decrypt_failed_dialog);
dialog.show();
Sin embargo siempre consigo esta excepción:
01-11 18:49:00.507: ERROR/AndroidRuntime(3461): android.util.AndroidRuntimeException: requestFeature() must be called before adding content
01-11 18:49:00.507: ERROR/AndroidRuntime(3461): at com.android.internal.policy.impl.PhoneWindow.requestFeature(PhoneWindow.java:181)
01-11 18:49:00.507: ERROR/AndroidRuntime(3461): at com.android.internal.app.AlertController.installContent(AlertController.java:199)
01-11 18:49:00.507: ERROR/AndroidRuntime(3461): at android.app.AlertDialog.onCreate(AlertDialog.java:251)
...
en la línea de dialog.show()
. ¿Qué debería hacer para deshacerme de esto?
Sería bueno agregar un comentario para que otra persona pueda entender fácilmente lo que se hizo de manera diferente sin tener que comparar el código. – codinguser
Tienes razón amigo ... No tengo tiempo ahora. ¿Te importaría editar la respuesta para que sea más precisa? – Cristian
Gracias! Me salvaste el día con "... necesitas usar setView (Ver) en lugar de setContentView() ..." :) –