2012-09-24 193 views
1

我添加了第二個活動到我的應用程序,我在AndroidManifest.xml中寫了這個,但我仍然存在一個問題。我不知道我能如何解決它。我確定我的源代碼是正確的,因爲我從書中重寫了它。 我logcat的:新活動 - 應用程序不啓動

09-24 15:41:16.359: E/AndroidRuntime(5735): FATAL EXCEPTION: main 
09-24 15:41:16.359: E/AndroidRuntime(5735): java.lang.RuntimeException: Unable to start activity ComponentInfo{org.przyklad.sudoku/org.przyklad.sudoku.MainActivity}: java.lang.NullPointerException 
09-24 15:41:16.359: E/AndroidRuntime(5735):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1967) 
09-24 15:41:16.359: E/AndroidRuntime(5735):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1992) 
09-24 15:41:16.359: E/AndroidRuntime(5735):  at android.app.ActivityThread.access$600(ActivityThread.java:127) 
09-24 15:41:16.359: E/AndroidRuntime(5735):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1158) 
09-24 15:41:16.359: E/AndroidRuntime(5735):  at android.os.Handler.dispatchMessage(Handler.java:99) 
09-24 15:41:16.359: E/AndroidRuntime(5735):  at android.os.Looper.loop(Looper.java:137) 
09-24 15:41:16.359: E/AndroidRuntime(5735):  at android.app.ActivityThread.main(ActivityThread.java:4441) 
09-24 15:41:16.359: E/AndroidRuntime(5735):  at java.lang.reflect.Method.invokeNative(Native Method) 
09-24 15:41:16.359: E/AndroidRuntime(5735):  at java.lang.reflect.Method.invoke(Method.java:511) 
09-24 15:41:16.359: E/AndroidRuntime(5735):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 
09-24 15:41:16.359: E/AndroidRuntime(5735):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) 
09-24 15:41:16.359: E/AndroidRuntime(5735):  at dalvik.system.NativeStart.main(Native Method) 
09-24 15:41:16.359: E/AndroidRuntime(5735): Caused by: java.lang.NullPointerException 
09-24 15:41:16.359: E/AndroidRuntime(5735):  at org.przyklad.sudoku.MainActivity.onCreate(MainActivity.java:19) 
09-24 15:41:16.359: E/AndroidRuntime(5735):  at android.app.Activity.performCreate(Activity.java:4465) 
09-24 15:41:16.359: E/AndroidRuntime(5735):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049) 
09-24 15:41:16.359: E/AndroidRuntime(5735):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1931) 
09-24 15:41:16.359: E/AndroidRuntime(5735):  ... 11 more 

這是MainActivity.java

package org.przyklad.sudoku; 

import android.os.Bundle; 
import android.app.Activity; 
import android.view.Menu; 
import android.content.Intent; 
import android.view.View; 
import android.view.View.OnClickListener; 

public class MainActivity extends Activity implements OnClickListener { 

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

    // Konfigurujemy obiekty nasłuchujące kliknięć dla wszystkich przycisków 
     View przyciskKontynuacja = findViewById(R.id.przycisk_kontynuacja); 
     przyciskKontynuacja.setOnClickListener(this); 
     View przyciskNowa = findViewById(R.id.przycisk_nowa); 
     przyciskNowa.setOnClickListener(this); 
     View przyciskInformacje = findViewById(R.id.przycisk_informacje); 
     przyciskInformacje.setOnClickListener(this); 
     View przyciskWyjscie = findViewById(R.id.przycisk_wyjscie); 
     przyciskWyjscie.setOnClickListener(this); 

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

     } 
    } 
} 

和Informacje.java

package org.przyklad.sudoku; 

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

public class Informacje extends Activity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState){ 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.informacje); 
    } 
} 
+1

您的源代碼不正確。您在MainActivity的onCreate()中獲得nullpointerexception。發佈該方法。 –

+0

請上傳您的代碼。 – Lucifer

+2

您正在'MainActvity.java'的第19行得到'NullPoinerException'。發佈您的代碼,以便我們可以更好地瞭解您要做什麼。 –

回答

2

不信任的書籍。他們充滿了信件和東西。另外,正如你的堆棧跟蹤所表明的那樣(閱讀它,其中有很多好東西,看起來比你的書還要多),你有一個空引用,並且你試着調用一個方法。該調用位於MainActivity的第19行。這是onCreate方法。

最有可能的是,這是一個沒有找到原因的視圖引用。可能,您忘記了調用setContentView

相關問題