Android Studio程序崩溃

时间:2015-03-02 21:16:30

标签: java android android-intent android-activity android-studio

我有两个活动Main和Game_Activity 当我的应用程序启动时,我单击一个按钮将我带到Game_Activity,它崩溃了... 主

@覆盖

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

    Button btnHelp = (Button) findViewById(R.id.btnHelp);
    Button btnStart = (Button) findViewById(R.id.btnStart);
    Button btnSettings = (Button) findViewById(R.id.btnSettings);
    btnStart.setOnClickListener(new View.OnClickListener(){

        @Override
        public void onClick(View view) {
        Intent i = new Intent(MainActivity.this, GameActivity.class); //gets us to Game activity when Start Button is clicked
        startActivity(i);
        overridePendingTransition(R.animator.animation1, R.animator.animation2);
        }
    });
}

Game_Activity

ViewGroup kamilsLayout;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    kamilsLayout = (ViewGroup) findViewById(R.id.kamilsLayout);


    Button kamilsButton2 = (Button) findViewById(R.id.kamilsButton2);
    kamilsButton2.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            moveButton();
        }
    });
}

public void moveButton(){
    View kamilsButton = findViewById(R.id.kamilsButton);

    TransitionManager.beginDelayedTransition(kamilsLayout);
    //Change size of the button
    ViewGroup.LayoutParams sizeRules = kamilsButton.getLayoutParams();
    sizeRules.height = 700;

    kamilsButton.setLayoutParams(sizeRules);
}

这是Logcat抱歉最后一行,但无法格式化......:/

03-02 21:32:49.073  22427-22427/com.example.kamil.mychemicalreaction E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.example.kamil.mychemicalreaction, PID: 22427
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.kamil.mychemicalreaction/com.example.kamil.mychemicalreaction.GameActivity}: java.lang.NullPointerException
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2305)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2363)
        at android.app.ActivityThread.access$900(ActivityThread.java:161)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1265)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:157)
        at android.app.ActivityThread.main(ActivityThread.java:5356)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:515)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
        at dalvik.system.NativeStart.main(Native Method)
 Caused by: java.lang.NullPointerException
        at com.example.kamil.mychemicalreaction.GameActivity.onCreate(GameActivity.java:25)
        at android.app.Activity.performCreate(Activity.java:5426)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2269)at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2363)at android.app.ActivityThread.access$900(ActivityThread.java:161)at android.app.ActivityThread$H.handleMessage(ActivityThread.java:126)at android.os.Handler.dispatchMessage(Handler.java:102)at android.os.Looper.loop(Looper.java:157)at android.app.ActivityThread.main(ActivityThread.java:5356)at java.lang.reflect.Method.invokeNative(Native Method)at java.lang.reflect.Method.invoke(Method.java:515)at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1265)at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)at dalvik.system.NativeStart.main(Native Method)    

XML Game_Activity

<Button
    android:layout_width="150dp"
    android:layout_height="1dp"
    android:id="@+id/kamilsButton"
    android:gravity="bottom|fill_vertical"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true"
    android:background="#ff6aff01" />

<Button
    android:layout_width="50dp"
    android:layout_height="50dp"
    android:text="Click"
    android:id="@+id/kamilsButton2"
    android:textSize="9dp"
    android:clickable="true"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true"
    android:layout_marginBottom="102dp" />

菜单     

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:text="My Chemical Reaction"
    android:id="@+id/txtTitle"
    android:textStyle="bold"
    android:textColor="#ffa946ff"
    android:textSize="30dp"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true" />

<Button
    android:id="@+id/btnStart"
    android:text="Start"
    android:textColor="#ffffffff"
    android:textSize="30sp"
    android:layout_width="200dp"
    android:layout_height="50dp"
    android:background="@drawable/buttonshape"
    android:shadowColor="#A8A8A8"
    android:shadowDx="0"
    android:shadowDy="0"
    android:shadowRadius="5"
    android:layout_marginBottom="61dp"
    android:layout_above="@+id/btnSettings"
    android:layout_alignLeft="@+id/btnSettings"
    android:layout_alignStart="@+id/btnSettings" />

<Button
    android:id="@+id/btnSettings"
    android:text="Settings"
    android:textColor="#ffffffff"
    android:textSize="30sp"
    android:layout_width="200dp"
    android:layout_height="50dp"
    android:background="@drawable/buttonshape"
    android:shadowColor="#A8A8A8"
    android:shadowDx="0"
    android:shadowDy="0"
    android:shadowRadius="5"
    android:layout_above="@+id/btnHelp"
    android:layout_centerHorizontal="true"
    android:layout_marginBottom="58dp" />

<Button
    android:id="@+id/btnHelp"
    android:text="Help"
    android:textColor="#ffffffff"
    android:textSize="30sp"
    android:layout_width="200dp"
    android:layout_height="50dp"
    android:background="@drawable/buttonshape"
    android:shadowColor="#A8A8A8"
    android:shadowDx="0"
    android:shadowDy="0"
    android:shadowRadius="5"
    android:layout_alignParentBottom="true"
    android:layout_alignLeft="@+id/btnSettings"
    android:layout_alignStart="@+id/btnSettings"
    android:layout_marginBottom="81dp" />

2 个答案:

答案 0 :(得分:0)

尝试引用UI元素时,您会收到NullPointerException。从您的XML中,您似乎没有给出任何ID为kamilsLayout的布局。尝试将UI元素包含在具有此ID的布局中。

答案 1 :(得分:0)

像约瑟夫说的那样。您为两个活动设置了相同的XML,这是预期的吗? 您正在使用setContentView(R.layout.activity_main)。也许ViewGroup上没有R.layout.activity_main layout。而你正试图建立那个“

  

kamilsLayout =(ViewGroup)findViewById(R.id.kamilsLayout);

`