应用程序崩溃:类没有空构造函数

时间:2015-05-23 09:05:42

标签: java android

收到以下错误:

java.lang.InstantiationException: can't instantiate class appname.PlayerSelection; no empty constructor

我已经读了好几个小时了,所提供的解决方案都不适用于我。该应用程序昨天工作正常,我做了一些与任何事情无关的更改(向该类添加了一个void方法,然后在它崩溃后再次将其删除)。

我已从清单文件中删除了活动并从头开始重新添加,清单文件表明该类没有默认构造函数。

它的设置方式与我的所有其他活动完全相同,构造函数很简单:

public class PlayerSelection extends Activity implements View.OnClickListener  {

我尝试删除并重新添加onCreate方法....什么都没有效果。为什么它认为它现在没有构造函数,当它以前工作时它显然有一个?

请帮助:(

更新:在adnan9011帮助我之后,我在下面的底线上的类上得到一个nullpointer异常错误:

public class PlayerSelection extends Activity implements View.OnClickListener  {

private AdView mAdView;
private final static String config="Config.txt";
final Globals g = (Globals)getApplication();
*final ImageButton btnP1 = (ImageButton) findViewById(R.id.btnPlayer1);*

我删除了这一行并重新输入,看它是否自己找到了引用,并且它找到了R.id.btnPlayer1没有问题。啊...

2 个答案:

答案 0 :(得分:4)

不要在Android中使用Activites的构造函数,这很糟糕,会导致很多麻烦,比如这个错误。从Activity的每个子类中删除您创建的所有构造函数。

也永远不要这样做PlayerSelection someSelection = new PlayerSelection(); Android禁止手动证实服务/活动

答案 1 :(得分:3)

删除名为PlayerSelection()

的班级的方法(构造函数)

PlayerSelection延伸Activity,不需要构造函数。

你的班级应该像这样

public class PlayerSelection extends Activity {

}

不喜欢这样:

public class PlayerSelection extends Activity {
    public PlayerSelection() {

    }
}