Урок 59. Диалоги. DatePickerDialog

Обсуждение уроков
Makus
Сообщения: 1
Зарегистрирован: 15 окт 2015, 17:41

Re: Урок 59. Диалоги. DatePickerDialog

Сообщение Makus » 15 окт 2015, 17:52

dmitry_n писал(а): public void onTimeClick(View v) {
DialogFragment dFrag = new TimePickerFragment();
dFrag.show(getFragmentManager(), "timePicker" );
}
Почему здесь используем getFragmentManager(), а не getSupportFragmentManager() ?

Аватара пользователя
doter.ua
Сообщения: 1106
Зарегистрирован: 23 ноя 2013, 16:08
Откуда: Ukraine

Re: Урок 59. Диалоги. DatePickerDialog

Сообщение doter.ua » 15 окт 2015, 19:38

Makus писал(а):
dmitry_n писал(а): public void onTimeClick(View v) {
DialogFragment dFrag = new TimePickerFragment();
dFrag.show(getFragmentManager(), "timePicker" );
}
Почему здесь используем getFragmentManager(), а не getSupportFragmentManager() ?
Тут скорее вопрос в минСдк версии. Сапортный вариант юзается при подключении сапортных либ.
Семь раз отмерь - поставь студию.
Эклипс не студия, ошибка вылетит - не исправишь.
Скажи мне кто твой друг, и оба поставили студию.
Студия - свет, а эклипс - тьма.

GosuUnDeadGhost
Сообщения: 1
Зарегистрирован: 21 июл 2016, 14:20

Re: Урок 59. Диалоги. DatePickerDialog

Сообщение GosuUnDeadGhost » 21 июл 2016, 14:24

TheCoder писал(а):Всем привет. Такой вопрос: как установить в сам picker дату, которую пользователь выбрал ранее? Сначала я устанавливаю в picker текущую дату, а при повторном вызове picker-а есть необходимость установить в него ранее выбранную дату, а не текущую. Возможно, вопрос глупый, но решения я не нашел. Заранее спасибо
Если вызывать DatePicker через DialogFragment, вот как у меня:

Код: Выделить всё

public class DatePickerFragment extends DialogFragment implements DatePickerDialog.OnDateSetListener {

	private int year = 0;
	private int month = 0;
	private int day = 0;
	
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {

	if (this.year == 0 || this.month == 0 || this.day == 0){
		final Calendar c = Calendar.getInstance();
		this.year = c.get(Calendar.YEAR);
		this.month = c.get(Calendar.MONTH);
		this.day = c.get(Calendar.DAY_OF_MONTH);
	}

	return new DatePickerDialog(getActivity(), (OSMMapActivity)getActivity(), year, month, day);
	
	}
	
	public void onDateSet(DatePicker view, int year, int month, int day) {

	}
	
	public void SetDate(int year, int month, int day){
		this.year = year;
		this.month = month;
		this.day = day;
	}
}
В MainActivity:

Код: Выделить всё

DatePickerFragment newFragment = new DatePickerFragment();
    public void showDatePickerDialog(View v) {
        newFragment.show(getFragmentManager(), "datePicker");
    }
    
    public void onDateSet(DatePicker view, int year, int month, int day) {
    	/* Do something */
    	newFragment.SetDate(year, month-1, day);
    }

s.andrey
Сообщения: 1
Зарегистрирован: 06 дек 2016, 00:07

Re: Урок 59. Диалоги. DatePickerDialog

Сообщение s.andrey » 12 дек 2016, 17:57

Доброе время суток!
Есть вопросы по теме.
1. Вывод даты почему то в порядке YYYY.MM.DD
2. В диалоге календарь с 01.01.1900 г

Объясните тупому.

Код: Выделить всё

button4.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Calendar c = Calendar.getInstance();
                myDay = c.get(Calendar.DATE);
                myMonth = c.get(Calendar.MONTH);
                myYer = c.get(Calendar.YEAR);

                DatePickerDialog dpd = new DatePickerDialog(MainActivity.this, new DatePickerDialog.OnDateSetListener() {
                    @Override
                    public void onDateSet(DatePicker datePicker, int day, int Month, int year) {
                        textView.setText(day+"."+Month+"."+year);
                    }
                }, myDay, myMonth, myYer);
                dpd.show();
                return;


            }

        });

Ответить