如何使列表视图中的项无法点击。我有主题和项目在一个列表视图中,但是对于主题和项目来说,视图都是相同的。项目是可点击的,但是主题不可点击。如何实现这个功能。
列表将如下所示:
Topic
item
Topic
item
item
主题。clickable(false)无效,请帮忙。
不知道你是否还需要,但你可以实现自己的适配器(Adapter),并覆盖isEnabled(int position)方法。根据项目的ViewType返回true或false。
android:listSelector="@android:color/transparent"
,这对我很有效。 - Dick Lucas分享我的经验,以下是解决方法(视图指列表项视图):
view.setEnabled(false);
view.setOnClickListener(null);
要使列表中的项目无法点击,您需要使适配器在列表中的项目上的isEnabled
方法返回false。一种简单的实例化适配器并覆盖isEnabled
的方法如下:
SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, android.R.layout.simple_list_item_1, null, from, to, 0) {
@Override
public boolean isEnabled(int position) {
return false;
}
};
android:listSelector="@android:color/transparent"
,这对我很有效。 - Dick Lucas这是正确答案:
我看到了很多评论说
setEnabled(false)
setClickable(false)
setFocusable(false)
这个方法看起来可行,但答案是否定的NO
唯一的解决办法是执行以下操作:
view = inflater.inflate(R.layout.row_storage_divider, parent, false);
view.setOnClickListener(null);
在ListView中将listSelector设置为透明
android:listSelector="@android:color/transparent"
ListView
中添加以下属性。android:cacheColorHint = "#00000000"
view = inflator.inflate(R.layout.items_menu_header, null);
view.setOnClickListener(null);