У меня есть приложение, в котором пользователь устанавливает дату и время, используя DatePicker и TimePicker.Я пытаюсь сохранить информацию как метку времени.В настоящее время я получаю метку времени на основе даты, выбранной пользователем (см. Код ниже):
Calendar cal = new GregorianCalendar(TimeZone.getTimeZone("GMT"));
final Calendar c = cal.getInstance();
int mYear = c.get(Calendar.YEAR); // current year
int mMonth = c.get(Calendar.MONTH); // current month
int mDay = c.get(Calendar.DAY_OF_MONTH); // current day
// date picker dialog
DatePickerDialog datePickerDialog = new DatePickerDialog(AddEventActivity.this,
new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year,
int monthOfYear, int dayOfMonth) {
// set day of month , month and year value in the edit text
txtDate.setText(dayOfMonth + "/"
+ (monthOfYear + 1) + "/" + year);
c.set(year, monthOfYear, dayOfMonth);
timestamp = c.getTimeInMillis();
}
Это работает нормально, но, поскольку я не даю время, оно устанавливает время для времениЯ создаю предмет.Например, допустим, что я установил событие 27 апреля 2014 года в 19:00 и сохранил его в 13:30, записанная метка времени будет отображаться 27 апреля 2014 года в 13:30.
Код длямой TimePicker ниже:
txtTime.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Calendar mcurrentTime = Calendar.getInstance();
int hour = mcurrentTime.get(Calendar.HOUR_OF_DAY);
int minute = mcurrentTime.get(Calendar.MINUTE);
TimePickerDialog mTimePicker;
mTimePicker = new TimePickerDialog(AddEventActivity.this, new TimePickerDialog.OnTimeSetListener() {
@Override
public void onTimeSet(TimePicker timePicker, int selectedHour, int selectedMinute) {
//adding extra 0 to the front of 1 digit hours and minutes so format is consistent.
String hourFormat = String.format("%02d", selectedHour);
String minFormat = String.format("%02d", selectedMinute);
txtTime.setText(hourFormat + ":" + minFormat);
}
}, hour, minute, true);
mTimePicker.show();
}
});
Есть ли способ объединить дату и время, выбранные для создания точной метки времени?