我有一个这样的课程:
class TopicFragment extends Fragment{
public TopicFragment(VO vO) {
// some code
}
}
用户报告应用程序崩溃,日志显示:
android.support.v4.app.Fragment$InstantiationException: Unable to instantiate fragment com.aaa.wert.TopicFragment: make sure class name exists, is public, and has an empty constructor that is public
我已查看此链接,但我无法解决此问题;
Do fragments really need an empty constructor?
Fragment - InstantiationException: no empty Constructor -> Google Maps v2?
请帮助我。
答案 0 :(得分:1)
只需添加一个没有参数的空构造函数即可。如果您在没有空构造函数的情况下使用XML设置片段,则无法创建它。
public TopicFragment() {
}
我通常也只有空构造函数,并且有一个像这样的方法来实例化参数
public static TopicFragment newInstance(VO vo) {
TopicFragment fragment = new TopicFragment();
fragment.setVo(vo);
return fragment;
}
编辑:正如大家在评论中所说,让你的班级:
public class TopicFragment {
}