Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/191.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
错误java.lang.RuntimeException:无法启动活动_Java_Android_Android Intent - Fatal编程技术网

错误java.lang.RuntimeException:无法启动活动

错误java.lang.RuntimeException:无法启动活动,java,android,android-intent,Java,Android,Android Intent,我正在创建我的第一个Android应用程序,所以我对它非常陌生。一切都进行得很顺利,但现在我犯了一个错误。这个应用程序非常简单。基本上有一个带有一个问题和两个按钮的活动。根据问题的答案,您可以单击其中一个按钮进入另一个活动。基本上你们一直在回答这个问题,直到你们得到最后的答案 我得到错误的地方以前是工作的,但现在它崩溃了,我不知道为什么 以下是错误: 02-28 18:45:42.969 1851-1851/c.whats_that_plane D/AndroidRuntime﹕ Shut

我正在创建我的第一个Android应用程序,所以我对它非常陌生。一切都进行得很顺利,但现在我犯了一个错误。这个应用程序非常简单。基本上有一个带有一个问题和两个按钮的活动。根据问题的答案,您可以单击其中一个按钮进入另一个活动。基本上你们一直在回答这个问题,直到你们得到最后的答案

我得到错误的地方以前是工作的,但现在它崩溃了,我不知道为什么

以下是错误:

02-28 18:45:42.969    1851-1851/c.whats_that_plane D/AndroidRuntime﹕ Shutting down VM
    --------- beginning of crash
02-28 18:45:42.970    1851-1851/c.whats_that_plane E/AndroidRuntime﹕ FATAL EXCEPTION: main
    Process: c.whats_that_plane, PID: 1851
    java.lang.RuntimeException: Unable to start activity ComponentInfo{c.whats_that_plane/c.whats_that_plane.jtailtype}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on a null object reference
这是我点击的按钮的代码

public class Propellers extends ActionBarActivity {

private static Button button_propellers;
private static Button button_jetengine;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_propellers);
    Gotoptailtype ();
    Gotojtailtype ();
}
public void Gotoptailtype () {
    button_propellers = (Button)findViewById(R.id.buttonyes);
    button_propellers.setOnClickListener(
            new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    Intent toptailtype = new Intent("c.whats_that_plane.ptailtype");
                    startActivity(toptailtype);
                }
            }
    );
}
public void Gotojtailtype () {
    button_jetengine = (Button)findViewById(R.id.buttonno);
    button_jetengine.setOnClickListener(
            new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    Intent tojtailtype = new Intent("c.whats_that_plane.jtailtype");
                    startActivity(tojtailtype);
                }
            }
    );
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.menu_propellers, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle action bar item clicks here. The action bar will
    // automatically handle clicks on the Home/Up button, so long
    // as you specify a parent activity in AndroidManifest.xml.
    int id = item.getItemId();

    //noinspection SimplifiableIfStatement
    if (id == R.id.action_settings) {
        return true;
    }

    return super.onOptionsItemSelected(item);
}
}
特别是当我单击“否”按钮时。调用上述代码的这一部分

public void Gotojtailtype () {
    button_jetengine = (Button)findViewById(R.id.buttonno);
    button_jetengine.setOnClickListener(
            new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    Intent tojtailtype = new Intent("c.whats_that_plane.jtailtype");
                    startActivity(tojtailtype);
                }
            }
    );
}
在意图中,如果我将活动c.whats_that_plane.jtailtype替换为c.whats_that_plane.ptailtype,就像单击“是”按钮一样,它将转到ptailtype活动。因此,当它试图调用jtailtype活动时,出现了一些错误


我到处看,一切都很好。清单、Java和活动。有没有人能告诉我应该在哪里查找导致此错误的原因,或者您是否需要更多信息。谢谢。

此线路出现异常

Intent toptailtype = new Intent("c.whats_that_plane.ptailtype");
                    startActivity(toptailtype);
使用此代码启动不同的活动

Intent toptailtype = new Intent(Propellers.this,SecondActivity.class);
                    startActivity(toptailtype);

同时确认您正在正确调用activity,并且您调用的activity没有抛出任何NPE。

当您试图将
onClickListener()
设置为
按钮或视图中的一个为空的
时,activity出现了
jtailtype
问题。谢谢您的回复。我理解它是空的,因为它在错误消息中说。问题是我不知道为什么它是空的。我可以将按钮调用的活动更改为ptailtype,它将转到ptailtype活动,但它是jtailtype,不会转到jtailtype活动。据我所知,这意味着按钮没有问题,但活动一定有问题,对吗?是的,没错,在
jtailtype
活动中有问题,这就是我告诉你发布
jtailtype
活动代码的原因。如果你以不同的意图单击“否”按钮,它可以正常工作,但是如果你用这个
“c.plane.jtailtype”做什么它没有?我这样问是因为我认为问题出在你们提到的按钮上。这不是原因。问题是调用活动似乎有一些NullPointerException。好的。。但它似乎是“c.whats_the_plane.ptailtype”,用户只调用了一个包名,而意图重载了构造函数。请再次读取异常:java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“void android.widget.Button.setOnClickListener(android.view.view$OnClickListener)”