Voglio usare l'interfaccia fluida di AlertDialog.Builder ma quando arrivo al punto di aggiungere il mio DismissListener e ShowListener devo uscire e aggiungerlo all'oggetto dialog dopo aver creato il mio create() sul builder. Qualcuno sa perché non sono lì? Non posso estenderlo a causa del membro P privato ... Non è la fine del mondo o qualcosa del genere, sono solo curioso del perché non ci sia.Perché AlertDialog.Builder non ha metodi setOnDismissListener o setOnShowListener?
5
A
risposta
1
Dal livello API 17. è possibile utilizzare il metodo setOnDismissListener (DialogInterface.OnDismissListener onDismissListener)
7
Hai provato questo metodo ..
AlertDialog dlg = builder.create();
lg.setOnDismissListener(new DialogInterface.OnDismissListener() {
@Override
public void onDismiss(final DialogInterface dialog) {
//Do some work
}
});
return dlg;
Problemi correlati
- 1. AlertDialog setOnDismissListener non funziona
- 2. Perché SerializationInfo non ha i metodi TryGetValue?
- 3. AlertDialog vs AlertDialog.Builder
- 4. Perché IEnumerable <T> ha metodi FindAll o RemoveAll?
- 5. Perché Magento ha metodi _construct e __construct?
- 6. Come eliminare AlertDialog.Builder?
- 7. Estende AlertDialog.Builder in Android
- 8. AlertDialog.Builder elemento colore di sfondo
- 9. Perché java.util.HashSet non ha un metodo get (Object o)?
- 10. Apple mi ha rifiutato, non so perché, o come risolverlo
- 11. setOnCancelListener e setOnDismissListener non viene chiamato per AlertDialog per pulsante Indietro premuto o toccare al di fuori
- 12. Perché Python non ha variabili statiche?
- 13. Python ha metodi generici?
- 14. Perché ImmutableList di Guava ha così tanti metodi overload()?
- 15. Il servizio non può essere avviato, perché è disabilitato o perché non ha dispositivi associati associati
- 16. in quale contesto dovrei usare AlertDialog.Builder?
- 17. Perché SLComposeViewController non ha delegato?
- 18. Perché Rust non ha unioni?
- 19. Perché React.js non ha stateTipi?
- 20. Perché Map non ha un metodo mappa?
- 21. Perché usare coreBluetooth connectPeripheral non ha chiamato metodi delegato in iOS 8
- 22. Perché Scala ha SeqView ma non SetView?
- 23. Perché Array.prototype.reduce non ha un parametro thisObject?
- 24. WebBrowser.DrawToBitmap() o altri metodi?
- 25. Perché JUnit non fornisce i metodi assertNotEquals?
- 26. Perché l'interfaccia serializzabile non contiene metodi?
- 27. Se un'interfaccia Marker non ha metodi, come funziona?
- 28. Metodi di estensione di Java 8 - perché non vengono chiamati mixin o tratti?
- 29. Perché non Createfile() ha un flag binario
- 30. perché Java non ha un'importazione wildcard "profonda"?
Sì, ho detto che faccio del componente aggiuntivo dopo il mio .create() chiamata .. Ho preferirei essere in grado di fare: nuovo AlertDialog.Builder (ctx) .setTitle (title) .setMessage (msg) .setPositiveButton (buttonTitle, listener) .setDismissListener (dismissListener) .show() – danb
@danb Lo fai dopo il create() call, ma sull'oggetto Builder? Non funzionerà. create() è come il Builder ti dà un AlertDialog, ma un oggetto Builder non ha alcun metodo per impostare gli ascoltatori su di essi. – LuxuryMode
Il builder ha diversi metodi per impostare gli ascoltatori, ma non i due che ho menzionato. Ha setOnCancelListener, setOnItemSelectedListener e setOnKeyListener .. Sono curioso di sapere perché l'API sembra incompleta. – danb