Sto creando una finestra personalizzata contenente un EditText modo che io possa ottenere i dati di testo da parte dell'utente:problema Dialog: requestFeature() deve essere chiamato prima di aggiungere contenuti
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();
Tuttavia ho sempre questa eccezione:
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)
...
alla riga dialog.show()
. Cosa dovrei fare per sbarazzarmi di questo?
Sarebbe bello aggiungere un commento in modo che qualcun altro possa facilmente capire cosa è stato fatto diversamente senza dover confrontare il codice. – codinguser
Hai ragione, amico ... non ho tempo adesso. Ti dispiacerebbe modificare la risposta per renderla più precisa? – Cristian
Grazie! Mi hai salvato la giornata con "... è necessario utilizzare setview (View), invece di setContentView() ..." :) –