Android 单击中性按钮时在DatePickerDialog中获取日期设置
当按下空档按钮时,我试图让我的Android 单击中性按钮时在DatePickerDialog中获取日期设置,android,Android,当按下空档按钮时,我试图让我的DatePickerDialog打开一个TimePickerDialog,但是,似乎我在试图找到答案时遇到了死胡同 首先,我想输入一个OnClicklistener,但是我该如何获得日期呢 其次,如果我在datePickerDialog中使用onDateSet,如何检查是否按下了空档按钮 任何帮助都将不胜感激 public class DatePickerDialogFragment extends DialogFragment implements DateP
DatePickerDialog
打开一个TimePickerDialog
,但是,似乎我在试图找到答案时遇到了死胡同
- 首先,我想输入一个
listener,但是我该如何获得日期呢OnClick
- 其次,如果我在
中使用datePickerDialog
,如何检查是否按下了空档按钮onDateSet
public class DatePickerDialogFragment extends DialogFragment implements DatePickerDialog.OnDateSetListener{
int position;
@SuppressLint("ValidFragment")
public DatePickerDialogFragment(int position) {
this.position = position;
}
public DatePickerDialogFragment() {
this(-1);
}
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
final Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH);
int day = calendar.get(Calendar.DAY_OF_MONTH);
DatePickerDialog datePickerDialog = new DatePickerDialog(getActivity(), this, year, month, day);
datePickerDialog.setCanceledOnTouchOutside(false);
datePickerDialog.setButton(DialogInterface.BUTTON_NEUTRAL, "Set Time", //What do I do here?);
return new DatePickerDialog(getActivity(), this, year, month, day);
}
@Override
public void onCancel(DialogInterface dialog) {
if (position != -1)
new RecyclerAdapter(getActivity()).notifyItemChanged(position);
}
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
Log.d("We have liftoff!", "DPD Listener called!");
Log.d("onDateSet method", "Date set for: "+ dayOfMonth + "/" + monthOfYear + "/" + year);
if (position == -1) {
((MainActivity) getActivity()).setAlarm(year, monthOfYear, dayOfMonth);
// Call method from other activity
}
else {
((MainActivity)getActivity()).setAlarm(position, year, monthOfYear, dayOfMonth);
}
}
}
好吧,我以前应该想到这一点,但我所做的只是使用
datePickerDialog.getDatePicker.getWhatever
从DatePicker获取我的值,然后传递它。我真的是个白痴。好吧,我以前应该想到这一点,但我所做的只是使用datePickerDialog.getDatePicker.getwhich
从日期选择器获取我的值,然后传递它。我真的是个白痴