我有一個PreferenceScreen,然後動態創建一個PreferenceCategory,並在此類別上設置佈局newCategory.setLayoutResource(<PackageName>.R.Layout.myLayout);
。佈局是一對TextView和一個按鈕。當我嘗試更改這些TextView的文本TextView tvTextView = (TextView) findViewById(<PackageName>.R.id.tvTextView);
tvTextView.setText("Test");
時,我得到java.lang.NullPointerException
。我不知道到底發生了什麼,我正在拉我的頭髮,這一定是非常簡單的東西,我沒有得到。PreferenceScreen中的NullPointerException Android
登錄貓:希望這是正確的東西,我的意思複製= S
12-16 23:25:23.450: E/AndroidRuntime(5412): FATAL EXCEPTION: main
12-16 23:25:23.450: E/AndroidRuntime(5412): java.lang.NullPointerException
12-16 23:25:23.450: E/AndroidRuntime(5412): at <PackageName>.GpsLocation$2.onClick(GpsLocation.java:190)
12-16 23:25:23.450: E/AndroidRuntime(5412): at com.android.internal.app.AlertController$ButtonHandler.handleMessage(AlertController.java:158)
12-16 23:25:23.450: E/AndroidRuntime(5412): at android.os.Handler.dispatchMessage(Handler.java:99)
12-16 23:25:23.450: E/AndroidRuntime(5412): at android.os.Looper.loop(Looper.java:144)
12-16 23:25:23.450: E/AndroidRuntime(5412): at android.app.ActivityThread.main(ActivityThread.java:4937)
12-16 23:25:23.450: E/AndroidRuntime(5412): at java.lang.reflect.Method.invokeNative(Native Method)
12-16 23:25:23.450: E/AndroidRuntime(5412): at java.lang.reflect.Method.invoke(Method.java:521)
12-16 23:25:23.450: E/AndroidRuntime(5412): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
12-16 23:25:23.450: E/AndroidRuntime(5412): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
12-16 23:25:23.450: E/AndroidRuntime(5412): at dalvik.system.NativeStart.main(Native Method)
線190具有tvTextView.setText("Test");
,這就是錯誤顯然發生。
發佈您的LogCat(堆棧跟蹤)。另外,爲什麼使用R的「long」版本(' .R ....')應該沒問題。 –
這是因爲當我使用(R.id.Views)時,在ID的下拉列表中,輸入R.id時按「」。我的視圖不存在= S,但「長」版本有視圖。 – user959631
你是不小心導入了一個不同的R文件? – Sam