Android按钮无法启动活动

时间:2016-08-04 05:53:47

标签: java android

我的android按钮有点问题。当我按下它时,我的应用程序崩溃了,在我的logcat中,我有以下错误:

Caused by android.content.ActivityNotFoundException: Unable to find explicit activity class {com.example.defendthecastle/com.example.defendthecastle.GameView}; have you declared this activity in your AndroidManifest.xml?

奇怪的是,当我点击我的按钮时,我开始的活动不是GameView,它是GameActivity(使用GameView作为其视图)。之前我没有在我的清单中声明活动,所以我这样做了,但我仍然得到同样的错误。 这就是我设置按钮的方式:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    View startButton = findViewById(R.id.start_button);
    startButton.setOnClickListener(this);
}

public void onClick(View v) {
    switch(v.getId()) {
    case R.id.start_button:
        Intent i = new Intent(this, GameActivity.class);
        startActivity(i);
        break;
    }
}

这是我的xml中的按钮:

<Button 
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/start"
    android:id="@+id/start_button"

    />

最后,这是我的GameActivity类:

package com.example.defendthecastle;


import android.app.Activity;
import android.os.Bundle;

public class GameActivity extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    GameView gameView = new GameView(this);
    setContentView(gameView);
    gameView.requestFocus();
}

}

我知道这不是我的GameView的问题,因为我尝试使用另一个我认识有效的应用程序的视图。这真是令人沮丧,因为它只是我按钮的一个问题。任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:-1)

在Manifest文件中声明Activity,否则不会调用它。

注意:并确定它应该在Manifest文件的应用程序标记中。

<activity android:name="com.example.defendthecastle.GameView"/>