由于Context
调用我可能做错了,我在实施此Material DatePicker方面遇到了问题。
来自GitHub的示例工作得很好,因为Dialog是由Activity创建的。
但是,在这种特殊情况下,我使用的Fragment
附加了ListActivity
。
这就是我所说的:
Calendar now = Calendar.getInstance();
DatePickerDialog dpd = DatePickerDialog.newInstance(
(DatePickerDialog.OnDateSetListener) getActivity(),
now.get(Calendar.YEAR),
now.get(Calendar.MONTH),
now.get(Calendar.DAY_OF_MONTH)
);
dpd.show(getFragmentManager(), "Datepickerdialog");
这一行(DatePickerDialog.OnDateSetListener) getActivity()
正在产生问题。它在示例中声明为MainActivity.this
,但我无法使用ListActivity.this
或类似内容。
logcat的
过程:kva.ihm,PID:16218 java.lang.ClassCastException:无法转换为kva.ihm.ParameterListActivity com.wdullaer.materialdatetimepicker.date.DatePickerDialog $ OnDateSetListener 在kva.ihm.ParameterDetailFragment $ 49.onItemClick(ParameterDetailFragment.java:3839)
答案 0 :(得分:0)
愚蠢的错误。
正如之前在评论中提到的 @Selvin 一样,接口调用已经实现,因此,Android Studio自动导入错误地将其关联起来。
提示:不要相信邪恶的汽车进口。 :)