我创建了一个自定义列表,其中包含可以收缩或扩展的子项。
为了做到这一点,我在每个项目添加到列表时设置了onclick侦听器,以便根据当前状态进行扩展或缩进。
我遇到的问题是现在上下文菜单无效。
我希望通过长按来显示上下文菜单,并在正常点击时展开/收缩。
这可能吗?
答案 0 :(得分:1)
文档:http://developer.android.com/reference/android/widget/AdapterView.OnItemLongClickListener.html
您必须在ListView中设置setOnItemLongClickListener():
listView.setOnItemLongClickListener(new OnItemLongClickListener() {
public boolean onItemLongClick(AdapterView<?> arg0, View arg1,
int pos, long id) {
Log.v("long clicked","pos: " + pos);
return true;
}
});
列表中每个项目的XML(如果您使用自定义XML)也必须具有android:longClickable="true"
(或者您可以使用便捷方法listView.setLongClickable(true);)。这样你就可以得到一个列表,其中只有一些项目响应了longclick。