null或空意圖我有,我想實現一個非此即彼的邏輯,開始與活動:測試與Extrasd
我有這樣一行:
Username = getIntent().getExtras().getString("userprofile");
如果這是空,我希望它從其他地方分配用戶名...例如
if (Username.equals("")) {
Username = Rateit.username;
}
但是,它當然會在第一行崩潰。
我爲什麼要這樣做?如果附加內容爲空,此活動將成爲當前登錄用戶的用戶個人資料。還有其他一些場景,您可以點擊其他用戶名(不是您,記錄的用戶),然後使用他們的信息進入SAME活動。
我需要找到更好的邏輯或如何測試null。
logcat的作爲防撞請求:
02-16 14:39:24.088: E/AndroidRuntime(13467): FATAL EXCEPTION: main
02-16 14:39:24.088: E/AndroidRuntime(13467): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.---.---/com.---.---.profile.ProfileFragmentActivity}: java.lang.NullPointerException
02-16 14:39:24.088: E/AndroidRuntime(13467): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2059)
02-16 14:39:24.088: E/AndroidRuntime(13467): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2084)
02-16 14:39:24.088: E/AndroidRuntime(13467): at android.app.ActivityThread.access$600(ActivityThread.java:130)
02-16 14:39:24.088: E/AndroidRuntime(13467): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1195)
02-16 14:39:24.088: E/AndroidRuntime(13467): at android.os.Handler.dispatchMessage(Handler.java:99)
02-16 14:39:24.088: E/AndroidRuntime(13467): at android.os.Looper.loop(Looper.java:137)
02-16 14:39:24.088: E/AndroidRuntime(13467): at android.app.ActivityThread.main(ActivityThread.java:4745)
02-16 14:39:24.088: E/AndroidRuntime(13467): at java.lang.reflect.Method.invokeNative(Native Method)
02-16 14:39:24.088: E/AndroidRuntime(13467): at java.lang.reflect.Method.invoke(Method.java:511)
02-16 14:39:24.088: E/AndroidRuntime(13467): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:786)
02-16 14:39:24.088: E/AndroidRuntime(13467): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
02-16 14:39:24.088: E/AndroidRuntime(13467): at dalvik.system.NativeStart.main(Native Method)
02-16 14:39:24.088: E/AndroidRuntime(13467): Caused by: java.lang.NullPointerException
02-16 14:39:24.088: E/AndroidRuntime(13467): at com.---.---.profile.ProfileFragmentActivity.onCreate(ProfileFragmentActivity.java:85)
02-16 14:39:24.088: E/AndroidRuntime(13467): at android.app.Activity.performCreate(Activity.java:5008)
02-16 14:39:24.088: E/AndroidRuntime(13467): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1079)
02-16 14:39:24.088: E/AndroidRuntime(13467): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2023)
02-16 14:39:24.088: E/AndroidRuntime(13467): ... 11 more
當程序崩潰時會出現什麼錯誤?請從logcat發佈堆棧跟蹤。 – 2013-02-16 22:52:39
根據您的請求添加 – KickingLettuce 2013-02-16 22:55:08