Kma*_*man 12 java xml user-interface android listview
我有一个ListView活动需要一个页脚到项目列表,以便您可以单击它,它会将更多项目加载到列表中.该列表支持我的字符串映射支持的SimpleAdapter,在设置适配器之前我这样做是为了添加页脚:
mInflater.inflate(R.layout.list_load_more_row, null);
TextView footer = (TextView) findViewById(R.id.loadMore);
getListView().addFooterView(footer);
setListAdapter(ListViewHelper.getAdapterForContentList(mContent, this));
Run Code Online (Sandbox Code Playgroud)
但是我在调试器中得到了这个例外
java.lang.NullPointerException android.widget.ListView.clearRecycledState(ListView.java:489)android.widget.ListView.resetList(ListView.java:476)android.widget.ListView.setAdapter(ListView.java:417)
什么是错的,如何将我的页脚添加到列表中?
[编辑]活动正在使用list_load_more_row.xml:
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/loadMore"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="17sp"
android:textStyle="bold"
android:textColor="#000000"
android:ellipsize="marquee"
android:marqueeRepeatLimit="marquee_forever"
android:gravity="center_horizontal|center_vertical"
android:text="@string/hello" />
Run Code Online (Sandbox Code Playgroud)
Kma*_*man 21
Alrighty Iv找到了我的问题的解决方案,如果我这样做它按预期工作:
View view = mInflater.inflate(R.layout.list_load_more_row, null);
TextView footer = (TextView) view.findViewById(R.id.loadMore);
getListView().addFooterView(footer);
setListAdapter(ListViewHelper.getAdapterForContentList(mContent, this));
Run Code Online (Sandbox Code Playgroud)
我猜测,因为我将inflater中的null作为父参数,因此视图尚未添加到当前内容视图中,因此mainActivity无法找到它,因为我明确使用了返回的父视图inflater找到它正在工作的TextView.
| 归档时间: |
|
| 查看次数: |
41525 次 |
| 最近记录: |