Ответ 1
Сделайте этот класс внутренним классом в своей деятельности
если вы хотите установить текущую дату в качестве даты, которую вы видите при открытии datePicker. Вы можете сделать это так:
Calendar c = Calendar.getInstance();
int startYear = c.get(Calendar.YEAR);
int startMonth = c.get(Calendar.MONTH);
int startDay = c.get(Calendar.DAY_OF_MONTH);
class StartDatePicker extends DialogFragment implements DatePickerDialog.OnDateSetListener{
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
// TODO Auto-generated method stub
// Use the current date as the default date in the picker
DatePickerDialog dialog = new DatePickerDialog(BookingFormActivity.this, this, startYear, startMonth, startDay);
return dialog;
}
public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
// TODO Auto-generated method stub
// Do something with the date chosen by the user
startYear = year;
startMonth = monthOfYear;
startDay = dayOfMonth;
updateStartDateDisplay();
}
}
вы можете вызвать это диалоговое окно, установив этот метод на onClick
public void showStartDateDialog(View v){
DialogFragment dialogFragment = new StartDatePicker();
dialogFragment.show(getFragmentManager(), "start_date_picker");
}