Autore Topic: FragmentDialog: onCreateView o onCreateDialog?  (Letto 535 volte)

Offline TheFedex87

  • Nuovo arrivato
  • *
  • Post: 15
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S3
  • Sistema operativo:
    Windows 7/8
FragmentDialog: onCreateView o onCreateDialog?
« il: 07 Maggio 2014, 15:51:54 CEST »
0
Ciao a tutti...sto cercando di capire il funzionamento dei dialog. Nella guida che sto seguendo vengono ancora usati i "vecchi" Dialog. Cercando ho visto che ora vengono usati i DialogFragment. Ora cercando di capirne il funzionamento. Facendo le varie prove, volevo creare un custom dialog più aggiungere anche i pulsanti positive e negative. Tra i vari esempi, ho visto che a volte viene usato il metodo onCreateView, e altre volte onCreateDialog. Ma quale è corretto usare? Inizialmente ho provato con onCreateView, ma non riuscivo ad implementare i pulsanti Positive e Negative. Con onCreateDialog invece sono sia riuscito ad applicare il custom dialog (definiti via XML) che i due pulsanti. Ma quale è la differenza fra i 2 metodi?
Inoltre questo è il codice che ho usato. È corretto??
Codice (Java): [Seleziona]
@Override
public Dialog onCreateDialog (Bundle savedInstanceState) {
        View view = getActivity().getLayoutInflater().inflate(R.layout.exit_dialog_fragment, null);
       
        Button btnYes = (Button) view.findViewById(R.id.yes);
        btnYes.setOnClickListener(new View.OnClickListener() {
               
                @Override
                public void onClick(View v) {
                        // TODO Auto-generated method stub
                        System.exit(0);
                }
        });
       
        Button btnNo = (Button) view.findViewById(R.id.no);
        btnNo.setOnClickListener(new View.OnClickListener() {
               
                @Override
                public void onClick(View v) {
                        // TODO Auto-generated method stub
                        getDialog().dismiss();
                }
        });
        setCancelable(false);
        return new AlertDialog.Builder(getActivity())          
                .setTitle("Sei sicuro di voler uscire?")
                //.setCancelable(false)
               
                .setView(view)
                               
                .setPositiveButton("OK", new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int whichButton) {
                                // do something...
                                System.exit(0);
                        }
                }
                )
                .setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
                                public void onClick(DialogInterface dialog, int whichButton) {
                                        dialog.dismiss();
                                }
                }
                )
                .create();
}
Grazie.
« Ultima modifica: 07 Maggio 2014, 16:18:33 CEST da TheFedex87 »

iClaude

  • Visitatore
Re:FragmentDialog: onCreateView o onCreateDialog?
« Risposta #1 il: 08 Maggio 2014, 15:29:00 CEST »
0
Nella documentazione ufficiale trovi tutte le spiegazioni del caso:
DialogFragment | Android Developers

Offline TheFedex87

  • Nuovo arrivato
  • *
  • Post: 15
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S3
  • Sistema operativo:
    Windows 7/8
Re:FragmentDialog: onCreateView o onCreateDialog?
« Risposta #2 il: 08 Maggio 2014, 17:31:40 CEST »
0
Grazie