46 votes

Réglage de l'heure et de la date à jour et du sélecteur d'heure dans Android

J'utilise un sélecteur de date et un sélecteur d'heure dans mon application. Je souhaite régler la date et l'heure de chargement de la page. Est-ce possible? Comment?

117voto

0x5f3759df Points 1314

J'ai résolu un problème similaire à moi comme suit

 Calendar cal = Calendar.getInstance();

int year = cal.get(Calendar.YEAR);
int month = cal.get(Calendar.MONTH);
int day = cal.get(Calendar.DAY_OF_MONTH);
int hour = cal.get(Calendar.HOUR_OF_DAY);
int min = cal.get(Calendar.MINUTE);

datePicker.updateDate(year, month, day);

timePicker.setCurrentHour(hour);
timePicker.setCurrentMinute(min);

7voto

Mirko Points 1374

Il existe une updateDate pour le DatePicker.

Voici ce que j'utilise dans l'une de mes applications, sans utiliser de boîte de dialogue :

 //set datePicker to position
String date_saved = project_row.getString(
    project_row.getColumnIndex("project_startdate"));

int day  = Integer.parseInt(date_saved.substring(0,2));
int year = Integer.parseInt(date_saved.substring(5,9));
String month = date_saved.substring(2,5);
int month_code = getMonthInt(month);

project_startdate_data = (DatePicker) findViewById(R.id.project_startdate_data);
project_startdate_data.updateDate(year, month_code, day);

project_row est mon curseur, et la date est enregistrée dans la colonne project_startdate comme 22MAY2012

et il te faut ça :

 private int getMonthInt(String month) {
    if (month.equalsIgnoreCase("JAN")) return 0;
    if (month.equalsIgnoreCase("FEB")) return 1;
    if (month.equalsIgnoreCase("MAR")) return 2;
    if (month.equalsIgnoreCase("APR")) return 3;
    if (month.equalsIgnoreCase("MAY")) return 4;
    if (month.equalsIgnoreCase("JUN")) return 5;
    if (month.equalsIgnoreCase("JUL")) return 6;
    if (month.equalsIgnoreCase("AUG")) return 7;
    if (month.equalsIgnoreCase("SEP")) return 8;
    if (month.equalsIgnoreCase("OCT")) return 9;
    if (month.equalsIgnoreCase("NOV")) return 10;
    if (month.equalsIgnoreCase("DEC")) return 11;

    //return -1 if month code not found
    return -1;
}

2voto

Farhan Points 5104

Vérifiez cette boîte de dialogue Comment utiliser le sélecteur de date . et utilisez la fonction de mise à jour dans onCreate(); si par page se charge, vous voulez dire que l'activité commence... j'espère que cela vous aidera.

1voto

Jaydeep Khamar Points 3806

Vérifiez ceci .

Utiliser la fonction showDialog(TIME_DIALOG_ID); dans onCreate();

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X