我有一個Activity
與Button
,其中Intent
是相對於Activity
如何啓動。以前Activity
是ListView
是通過額外的這個Activity
爲Button
點擊Intents
定義不同的值。請看下面的代碼。App Force在按鈕單擊時關閉
public class ContentViewer extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Bundle bundle = this.getIntent().getExtras();
int chooser = bundle.getInt("Layout");
switch(chooser) {
case 0:
setContentView(R.layout.about);
break;
case 1:
setContentView(R.layout.contact);
break;
case 2:
setContentView(R.layout.contentviewer);
break;
case 3:
setContentView(R.layout.contact);
break;
case 4:
setContentView(R.layout.contact);
break;
case 5:
setContentView(R.layout.contact);
break;
case 6:
setContentView(R.layout.contact);
break;
case 7:
setContentView(R.layout.contact);
break;
case 8:
setContentView(R.layout.contact);
break;
case 9:
setContentView(R.layout.contact);
break;
}
final int linker = bundle.getInt("Layout");
Button vlink = (Button)findViewById(R.id.videolink);
vlink.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
switch(linker) {
case 0:
Intent v0 = new Intent(Intent.ACTION_VIEW,
Uri.parse("vnd.youtube://" + "0lh_UWF9ZP4"));
startActivity(v0);
break;
case 1:
Intent v1 = new Intent(Intent.ACTION_VIEW,
Uri.parse("vnd.youtube://" + "0lh_UWF9ZP4"));
startActivity(v1);
break;
case 2:
Intent v2 = new Intent(Intent.ACTION_VIEW,
Uri.parse("vnd.youtube://" + "0lh_UWF9ZP4"));
startActivity(v2);
break;
}
}
});
}
}
每當我點擊按鈕,應用程序強制關閉。我不知道我的錯誤可能在哪裏。繼承人錯誤日誌;
01-10 00:03:40.895: W/dalvikvm(5759): threadid=1: thread exiting with uncaught exception (group=0x40c271f8)
01-10 00:03:40.900: E/AndroidRuntime(5759): FATAL EXCEPTION: main
01-10 00:03:40.900: E/AndroidRuntime(5759): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.borislemke.cookingwithdog/com.borislemke.cookingwithdog.ContentViewer}: java.lang.NullPointerException
01-10 00:03:40.900: E/AndroidRuntime(5759): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1968)
01-10 00:03:40.900: E/AndroidRuntime(5759): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1993)
01-10 00:03:40.900: E/AndroidRuntime(5759): at android.app.ActivityThread.access$600(ActivityThread.java:127)
01-10 00:03:40.900: E/AndroidRuntime(5759): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1159)
01-10 00:03:40.900: E/AndroidRuntime(5759): at android.os.Handler.dispatchMessage(Handler.java:99)
01-10 00:03:40.900: E/AndroidRuntime(5759): at android.os.Looper.loop(Looper.java:137)
01-10 00:03:40.900: E/AndroidRuntime(5759): at android.app.ActivityThread.main(ActivityThread.java:4507)
01-10 00:03:40.900: E/AndroidRuntime(5759): at java.lang.reflect.Method.invokeNative(Native Method)
01-10 00:03:40.900: E/AndroidRuntime(5759): at java.lang.reflect.Method.invoke(Method.java:511)
01-10 00:03:40.900: E/AndroidRuntime(5759): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789)
01-10 00:03:40.900: E/AndroidRuntime(5759): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556)
01-10 00:03:40.900: E/AndroidRuntime(5759): at dalvik.system.NativeStart.main(Native Method)
01-10 00:03:40.900: E/AndroidRuntime(5759): Caused by: java.lang.NullPointerException
01-10 00:03:40.900: E/AndroidRuntime(5759): at com.borislemke.cookingwithdog.ContentViewer.onCreate(ContentViewer.java:61)
01-10 00:03:40.900: E/AndroidRuntime(5759): at android.app.Activity.performCreate(Activity.java:4465)
01-10 00:03:40.900: E/AndroidRuntime(5759): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1052)
01-10 00:03:40.900: E/AndroidRuntime(5759): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1932)
01-10 00:03:40.900: E/AndroidRuntime(5759): ... 11 more
會很好,如果有人能解釋這種情況! :) – borislemke 2012-01-09 23:11:31
行61中的東西是'null',不應該是。哪一條是61號線? – 2012-01-09 23:13:19
「ContentViewer.java」的第61行是什麼? – kabuko 2012-01-09 23:13:29