我在我的應用程序中有一個問題,我動態設置標題視圖爲listview
但我得到錯誤,我有兩個活動,A和B根據我的條件I我設置標題視圖爲listview
當我在A活動中設置headerview它工作正常,但是當A活動假我的條件並去B活動那裏我的條件是真的然後來一個活動我需要添加標題視圖那裏我越來越錯誤................我試圖添加onStart(),onResume()方法,但仍然得到相同的錯誤.....如何解決它java.lang.IllegalStateException:無法添加標題視圖列表Android
Java代碼
on Strat()
{
if (mDrawerList.getHeaderViewsCount()<1) {
TextView headerText = new TextView(mContext);
headerText.setGravity(Gravity.CENTER);
headerText.setTextColor(getResources().getColor(R.color.white_color));
headerText.setPadding(20, 12, 20, 12);
headerText.setTextSize(18);
headerText.setText(mSessionManager.getUserName());
mDrawerList.addHeaderView(headerText);
}
adapter = new NavDrawerListAdapter(mContext, navDrawerItems);
mDrawerList.setDividerHeight(2);
mDrawerList.setAdapter(adapter);
adapter.notifyDataSetChanged();
}
錯誤消息
2-20 15:15:34.799: E/AndroidRuntime(13111): FATAL EXCEPTION: main
12-20 15:15:34.799: E/AndroidRuntime(13111): java.lang.RuntimeException: Unable to resume activity {com.examle.EventListActivity}: java.lang.IllegalStateException: Cannot add header view to list -- setAdapter has already been called.
12-20 15:15:34.799: E/AndroidRuntime(13111): at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2790)
12-20 15:15:34.799: E/AndroidRuntime(13111): at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2819)
12-20 15:15:34.799: E/AndroidRuntime(13111): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1298)
12-20 15:15:34.799: E/AndroidRuntime(13111): at android.os.Handler.dispatchMessage(Handler.java:99)
12-20 15:15:34.799: E/AndroidRuntime(13111): at android.os.Looper.loop(Looper.java:137)
12-20 15:15:34.799: E/AndroidRuntime(13111): at android.app.ActivityThread.main(ActivityThread.java:5103)
12-20 15:15:34.799: E/AndroidRuntime(13111): at java.lang.reflect.Method.invokeNative(Native Method)
12-20 15:15:34.799: E/AndroidRuntime(13111): at java.lang.reflect.Method.invoke(Method.java:525)
12-20 15:15:34.799: E/AndroidRuntime(13111): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737)
12-20 15:15:34.799: E/AndroidRuntime(13111): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553)
12-20 15:15:34.799: E/AndroidRuntime(13111): at dalvik.system.NativeStart.main(Native Method)
12-20 15:15:34.799: E/AndroidRuntime(13111): Caused by: java.lang.IllegalStateException: Cannot add header view to list -- setAdapter has already been called.
12-20 15:15:34.799: E/AndroidRuntime(13111): at android.widget.ListView.addHeaderView(ListView.java:258)
12-20 15:15:34.799: E/AndroidRuntime(13111): at android.widget.ListView.addHeaderView(ListView.java:287)
'不能將標題視圖添加到列表中 - setAdapter已經被調用.'這就是說....你必須先添加標題然後setAdapter才能查看;] – Gooziec
befor設置適配器我正在添加標題視圖 – venu
它似乎不是。您可能正在訪問已經安裝的「ListView」。向我們展示相關代碼的更多部分。 – Rajesh