如何使一个ListView无法点击页眉或页脚 [英] How to make the header or footer of a ListView not clickable
问题描述
我添加一个页脚和头,以一个的ListView
使用方法 setHeaderView()
和 setFooterView()
和 ViewInflater
。这工作得很好。
I'm adding a footer and header view to a ListView
by using the methods setHeaderView()
and setFooterView()
and a ViewInflater
. That works quite well.
但我怎么能prevent烧制而成 onListItemClick
事件页眉或页脚看法?当然,我可以捕获该事件,并检查它是否来自一个页眉或页脚,但这只是解决了问题的一部分,因为页眉和页脚得到了仍然集中在单击时。
But how could I prevent the header or footer view from firing onListItemClick
events? Of course I can catch the event and check whether it came from a header or footer, but this only solves one part of the problem, as header and footer got still focused when clicked.
推荐答案
只需使用<一个href="http://developer.android.com/reference/android/widget/ListView.html#addFooterView%28android.view.View,%20java.lang.Object,%20boolean%29">ListView#addHeaderView(View五,对象数据,布尔isSelectable);
并匹配 addFooter()
方法。
Simply use the ListView#addHeaderView(View v, Object data, boolean isSelectable);
and matching addFooter()
method.
的对象数据的目的
参数。
The purpose of Object data
parameter.
ListView控件源$ C $ C介绍了数据
参数为:
The ListView source code describes the data
parameter as:
数据支持的观点。这是从ListAdapter#的getItem(int)的返回。
The data backing the view. This is returned from ListAdapter#getItem(int).
这意味着,如果我使用 listView.getAdapter()的getItem(0);。
它会返回数据
从我们的标题对象。
Which means if I use listView.getAdapter().getItem(0);
it will return the data
Object from our header.
我会详细说明这一个例子:
I'll elaborate this with an example:
listView = (ListView) findViewById(R.id.list);
String[] array = new String[] {"one", "two", "three"};
adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, array);
接下来让我们添加一个头,并设置适配器:
Next let's add a header and set the adapter:
listView.addHeaderView(view, "Potato", false);
listView.setAdapter(adapter);
之后,如果我们问:
Later if we ask:
Log.v("ListAdapter", listView.getAdapter().getItem(0)); // output: "Potato"
Log.v("ArrayAdapter", adapter.getItem(0)); // output: "one"
这篇关于如何使一个ListView无法点击页眉或页脚的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!