java.lang.InstantiationException:无法实例化类;没有空的构造函数

时间:2013-06-05 11:24:24

标签: android android-fragments fragment

我的应用程序崩溃了,我得到了这个logCat:

android.support.v4.app.Fragment$InstantiationException: Unable to instantiate fragment kostas.menu.rssreader.ListActivity$SampleListFragment: make sure class name exists, is public, and has an empty constructor that is public

2 个答案:

答案 0 :(得分:1)

您的活动未定义默认构造函数。不是将titleRes作为构造函数参数传递,而是将其作为intent extra传递。在您的情况下,您根本不需要定义构造函数,因此可以省略它)

public onCreate(...) {
  titleRes = getIntent().getIntExtra("titleResId", R.string.default_title);
}

开始活动:

Intent i = new Intent(this, ListActivity.class);
i.putExtra("titleResId", R.string.my_title);
startActivity(i);

答案 1 :(得分:-1)

ListActivity的超类意味着SlidingFragmentActivity类没有带有int的构造函数,因此您必须将 super()作为ListActivity的类构造函数中的第一个语句。 请查看打击代码。

public ListActivity(int titleRes) {
    super();
    mTitleRes = titleRes;
}

希望这会对你有所帮助...... :)