Java android listView点击后,选择消失
问题描述:
我想这样做:我有一个列表,每两个项目的颜色是不同的,并希望选择被点击的项目。所选的项目被高亮显示之后却老色彩还原被释放Java android listView点击后,选择消失
我这样做: artists_list_background_alternate.xml:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_selected="false"
android:state_pressed="false"
android:drawable="@color/sign_out_color" />
<item android:state_pressed="true"
android:drawable="@color/survey_toplist_item" />
<item android:state_selected="true"
android:state_pressed="false"
android:drawable="@color/survey_toplist_item" />
</selector>
artists_list_backgroundcolor.xml:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/grey" android:state_pressed="false" android:state_selected="false" />
<item android:drawable="@color/survey_toplist_item" android:state_pressed="true" />
<item android:drawable="@color/survey_toplist_item" android:state_pressed="false" android:state_selected="true" />
<item android:drawable="@color/survey_toplist_item" android:state_pressed="false" android:state_selected="true" />
</selector>
的Java文件代码::
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = convertView;
if (view == null) {
view = lInflater.inflate(R.layout.listitem, parent, false);
}
if (position % 2 == 0) {
view.setBackgroundResource(R.drawable.artists_list_backgroundcolor);
} else {
view.setBackgroundResource(R.drawable.artists_list_background_alternate);
}
((TextView) view.findViewById(R.id.heading)).setText(data.get(position));
return view;
}
ListView lvMain = (ListView) findViewById(R.id.list);
lvMain.setAdapter(adapter);
布局xml ::
<ListView
android:id="@+id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:cacheColorHint="#00000000"
android:dividerHeight="1dp" />
而且我不知道我做错了什么
答
为了使项目高亮显示,您需要为您提供ListView
choiceMode。例如:
android:choiceMode="singleChoice"
此外,在您的选择器中为状态android:state_activated="true"
添加颜色。
我加了这个,但是当我停止推物品时有这种颜色;灰色,不是这个survey_toplist_item: –
你需要修复你的选择器。引入状态'android:state_activated =“true”'。欲了解更多信息,[阅读此](https://*.com/a/25322334/966550)。 – waqaslam
我解决了这个问题,但是当我快速克制时,我有一个延迟,有时我有两个或所选的项目 –