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?
Réponses
Trop de publicités?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);
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);
où 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;
}
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.
Vérifiez ceci .
Utiliser la fonction showDialog(TIME_DIALOG_ID);
dans onCreate();