//When user clicks "other".
public void setDate(View view) {
DateTime dateTime=new DateTime();
new DatePickerDialog(CreateEventActivity.this, listener, dateTime.getYear(), dateTime.getMonthOfYear(), dateTime.getDayOfWeek()).show();
}
DatePickerDialog.OnDateSetListener listener = new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
DateTime eventDate = new DateTime();
eventDate.withYear(year);
eventDate.withMonthOfYear(monthOfYear + 1);
eventDate.withDayOfMonth(dayOfMonth);
time = eventDate;
Context appContext = getApplicationContext();
Toast.makeText(appContext, dayOfMonth + "/" + (monthOfYear + 1) + "/" + year + "," +eventDate.dayOfWeek().getAsText(), Toast.LENGTH_LONG).show();
dateTxt.setText(dayOfMonth + "/" + (monthOfYear + 1) + "/" + year);
dayTxt.setText(eventDate.dayOfWeek().getAsText());
otherButton.setBackgroundColor(Color.parseColor("#77B3FC"));
todayButton.setBackgroundColor(Color.parseColor("#DBDBDB"));
tomorrowButton.setBackgroundColor(Color.parseColor("#DBDBDB"));
}
};
У меня есть проблемы с этой частью: eventDate.dayOfWeek().getAsText()
Это показывает неправильный день недели, но дата в цифрах это хорошо.Попытка показать выбранный день как текст после DatePicker
(Только начал использовать Joda-Time, так что я не уверен в этом ...)
EDIT: дата в цифрах, как: 23.7.16 печатается правильно, но я хочу его покажите, какой день в неделю, как «понедельник» ... Я заметил, что он всегда пишет сегодняшнее имя. В тоста и в текстовом виде ...
Например, для нескольких различных дат он будет показывать: 23.6.16, пятница | 15.7.16, Пятница | 30.8.17, пятница
я не знаю, если это может привести к ошибке, но создать DatePickerDialog, он ожидает, что день месяца, а не в день неделя. Из документации для Android 'DatePickerDialog (контекст контекста, DatePickerDialog.OnDateSetListener listener, int year, int month, int dayOfMonth)' –
Я попытался изменить его, тот же результат –
День напечатан правильно в Toast или ошибочен в обоих? В чем разница? если это 1 день, это нормально, потому что в DayPicker начало недели в 0 –