java.lang.ClassCastException:ListActivity无法强制转换为DatePickerDialog

时间:2015-07-14 13:08:17

标签: java android android-fragments android-listfragment listactivity

由于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)

1 个答案:

答案 0 :(得分:0)

愚蠢的错误。

正如之前在评论中提到的 @Selvin 一样,接口调用已经实现,因此,Android Studio自动导入错误地将其关联起来。

提示:不要相信邪恶的汽车进口。 :)