2014-11-10 16 views
5

L'idea è di utilizzare un AlertDialog e impostarlo come DatePicker.
Il mio codice è:AlertDialog con DatePicker

AlertDialog.Builder builder = new AlertDialog.Builder(this); 
    DatePicker picker = new DatePicker(this); 
    picker.setCalendarViewShown(false); 

    builder.setTitle("Create Year"); 
    builder.setView(picker); 
    builder.setNegativeButton("Cancel", null); 
    builder.setPositiveButton("Set", null); 

    builder.show(); 

funziona, ma la mia domanda è: come posso avere gli ascoltatori sul set e il pulsante annullare?
Circa il pulsante SET vorrei avere l'ascoltatore e (ovviamente) ottenere la data dell'utente (la sua scelta della data)


voglio anche mostrano solo l'anno così voglio nascondere i dati del giorno e del mese.

+0

per ottenere il valore usa il selettore. per esempio. picker.getDayOfMonth – LynAs

risposta

5

È possibile utilizzare setPositiveButton, in questo modo:

dialog.setPositiveButton(R.string.dialog_ok, new DialogInterface.OnClickListener() { 
    public void onClick(DialogInterface dialog, int id) { 
    //do something   
    } 
}); 

Lo stesso per setNegativeButton.

voglio anche mostrare solo l'anno in modo che io voglio nascondere giorno e mese dati

vedere questo, utilizzare la prima risposta:

Hide Year field in Android DatePicker?

+0

Perfetto, grazie. ora quando l'utente fa clic su set, sono nel metodo dell'ascoltatore ma come posso ottenere la sua data? (la data che ha selezionato?) –

+0

@GiovanniFar Senza offesa, ma come funziona SO, 1 risposta per 1 domanda ... hai già fatto 2 domande. Meglio per te creare un'altra domanda per i problemi futuri –

+0

di solito succede che io vado giù votare perché dicono: puoi unire tutto in 1 domanda, ora non è buono perché ho diviso le domande ...: rotolo: in ogni caso grazie così molto –