【发布时间】:2016-11-04 11:35:50
【问题描述】:
我有可扩展的回收站视图。 在这个回收站视图中,我有 ChildViewHolder,其中调用了以下方法:
public void showDatePickerDialog() {
DatePickerFragment datePickerFragment= new DatePickerFragment();
SelectionActivity activity = (SelectionActivity) mContext;
datePickerFragment.show(activity.getSupportFragmentManager(), "datePicker");
}
我的 DatePickerFragment:
public class DatePickerFragment extends DialogFragment implements DatePickerDialog.OnDateSetListener {
public DatePickerFragment() {
// Required empty public constructor
}
@NonNull
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
final Calendar c = Calendar.getInstance();
int year = c.get(Calendar.YEAR);
int month = c.get(Calendar.MONTH);
int day = c.get(Calendar.DAY_OF_MONTH);
DatePickerDialog datePickerDialog = new DatePickerDialog(getActivity(), this, year, month, day);
// Create a new instance of DatePickerDialog and return it
return datePickerDialog;
}
@Override
public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {
TimePickerFragment newFragment = new TimePickerFragment();
newFragment.show(getActivity().getFragmentManager(), "timePicker");
}
}
在 DatePickerFragment 中,我也在 DatePickerFragment 关闭后立即调用 TimePickerFragment。
我的问题是:如何在 ChildViewHolder 中获取日期信息(也是时间信息)?
【问题讨论】:
-
您可以创建自己的监听器。在 DatePickerFragment 中设置监听器并在 ChildViewHolder 中处理响应。我不知道这种机制是否真的是最好的,但为什么不尝试
-
@PavliukR 你是对的,谢谢!看来这是最好的方法。我已经添加了答案。
标签: android android-dialogfragment android-datepicker