#java #android #material_design
Я использую библиотеку MaterialDateTimePicker , и у меня два TextView (Откуда - Куда)... Так вот при нажатии на "Откуда", должен открыться диалоговое окно с календарем и там выбираю одну дату. Потом при открытии "Куда", предыдущая выбранная дата должна отображаться, то есть две даты выбираются. У меня пока для каждого textView по диалогу... Просто мне кажется это неправильный подход. Так вот хотел спросить, как использовать для обоих TextView один Диалог и при этом получать два результата? Где именно копать?
Ответы
Ответ 1
Создайте локальную boolean переменную, назовите её, скажем, isFrom = false. При клике на кнопку/вьюшку, которая вызывается диалог для "откуда" присваивайте Вашей булевой переменной значение true. Для диалога "Куда", соответственно false устанавливайте обратно. По идее Dialog у Вас открывается примерно таким способом: private void showDatePickerDialog() { Calendar now = Calendar.getInstance(); DatePickerDialog dpd = DatePickerDialog.newInstance( CreateEventActivity.this, now.get(Calendar.YEAR), now.get(Calendar.MONTH), now.get(Calendar.DAY_OF_MONTH) ); dpd.show(getFragmentManager(), "Datepickerdialog"); } Далее перекрываем onDateSet, в котором и будем смотреть в какое текстовое поле вставить значение @Override public void onDateSet(DatePickerDialog view, int year, int monthOfYear, int dayOfMonth) { String month = String.valueOf(monthOfYear + 1); String day = String.valueOf(dayOfMonth); if (isFrom) fromTextView.setText(day + "." + (month) + "." + year); else whereTextView.setText(day + "." + (month) + "." + year); showTimePickerDialog(); }
Комментариев нет:
Отправить комментарий