Java 从android studio安装的应用程序在我的手机上不断崩溃

Java 从android studio安装的应用程序在我的手机上不断崩溃,java,android,Java,Android,我刚开始安卓系统的开发,不知道为什么我的应用程序总是崩溃。。。。我现在正在尝试更改活动…这是我的代码 package app.dm.com.tictac; import android.content.Intent; import android.support.v7.app.ActionBarActivity; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import an

我刚开始安卓系统的开发,不知道为什么我的应用程序总是崩溃。。。。我现在正在尝试更改活动…这是我的代码

package app.dm.com.tictac;

import android.content.Intent;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;


public class MainActivity extends ActionBarActivity{


    Button b;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    b=(Button)findViewById(R.id.b1);
    b.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent i=new Intent(getApplicationContext(),twoP.class);
            startActivity(i);
        }
    });
    }


    @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_main, 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);
}
}
这是我的XML代码

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:background="#4285f4"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">

<TextView
    android:textColor="#FFF"
    android:textSize="30dp"
    android:text="TIC TAC TOE" android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/textView" />
<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_below="@+id/b1"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:layout_marginTop="98dp"
    android:text="Play 1v1"
    />

</RelativeLayout>
下面是它的XML代码

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout  
    xlmns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:background="#4285f4"
    android:layout_height="match_parent">   

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Random BS "
        android:textColor="#FFF"
        android:textSize="30dp"
        android:id="@+id/textView2" />

    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Go Back"
        android:id="@+id/b2"
        android:layout_gravity="center_vertical"
        android:layout_below="@+id/textView2"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_marginTop="98dp" />

</RelativeLayout>
一旦我将应用程序安装到我的设备上,它就会显示不幸的是ticTac已经停止。我真的不知道我的错误是什么。任何帮助都将不胜感激……谢谢

我的android清单文件:

 <?xml version="1.0" encoding="utf-8"?>
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="app.dm.com.tictac" >

     <application
     android:allowBackup="true"
     android:icon="@drawable/ic_launcher"
     android:label="@string/app_name"
     android:theme="@style/AppTheme" >
     <activity
         android:name=".MainActivity"
         android:label="@string/app_name" >
         <intent-filter>
             <action android:name="android.intent.action.MAIN" />

             <category android:name="android.intent.category.LAUNCHER"/>
        </intent-filter>
     </activity>
     <activity android:name=".twoP">

    </activity>

    </application>

</manifest>
以下是logcat文件: 您的错误是-

java.lang.RuntimeException: Unable to start activity ComponentInfo{app.dm.com.tictac/app.dm.com.tictac.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on a null object reference 
它出现在app.dm.com.tictac.MainActivity.onCreateMainActivity.java:21

您正在使用
b=按钮FindViewByIDR.id.b1;但是在任何布局文件中都没有定义具有此id的按钮。我想您打算在第一个活动的布局文件中使用。

请在将getApplicationContext替换为MainActivity后重试。此


即使在这之后,错误仍然不会消失,那么请将错误日志发布到这里。

在您的第一个xml中,您有android:layout_,如下=@+id/b1。您可能想键入android:id=@+id/b2

在代码中,调用b=ButtonfindViewByIdR.id.b1;但是,没有具有该id的按钮,因此b被分配为null。之后,您尝试将onClickListener分配给该应用程序,应用程序崩溃

这正是这一行告诉你的:

04-23 19:42:21.979: E/AndroidRuntime(13918): java.lang.RuntimeException: Unable to start activity ComponentInfo{app.dm.com.tictac/app.dm.com.tictac.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on a null object reference

请张贴logcat输出。它将显示堆栈traceFirst pb在您的第一个xml中没有id为b1的按钮!对于android:layout_below=@+id/b1,你说把这个按钮放在b1下面,logcat stacktrace告诉你什么?你没有看你自己的logcat。。。首先做一些研究04-23 19:57:43.033:E/AndroidRuntime16703:Process:app.dm.com.tictac,PID:16703 04-23 19:57:43.033:E/AndroidRuntime16703:java.lang.RuntimeException:无法启动活动组件信息{app.dm.com.tictac/app.dm.com.tictac.MainActivity}:java.lang.NullPointerException:尝试在空对象引用04-23 19:57:43.033:E/AndroidRuntime16703:at app.dm.com.tictac.MainActivity.onCreateMainActivity.java:21*出了什么问题:无法从中读取packageName/home/damian/AndroidStudioProjects/ticTac/app/src/main/AndroidManifest.xml如何解决上述问题?
04-23 19:42:21.979: E/AndroidRuntime(13918): java.lang.RuntimeException: Unable to start activity ComponentInfo{app.dm.com.tictac/app.dm.com.tictac.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on a null object reference