在我的 Android 应用程序中,我使用列表视图。列表视图的代码如下
<ListView
android:id="@+id/inputselect_listview"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:choiceMode="singleChoice"
android:footerDividersEnabled="true"
android:headerDividersEnabled="true"
android:listSelector="@drawable/list_selector"
android:splitMotionEvents="true" >
</ListView>
当用户从列表视图中选择一项时,列表项的背景颜色会根据这一行发生变化
android:listSelector="@drawable/list_selector"
编辑:list_selector.xml
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_window_focused="false" android:state_selected="true"
android:drawable="@android:color/transparent" />
<item android:state_selected="true"
android:drawable="@android:color/transparent" />
<item android:state_pressed="true" android:state_selected="false"
android:drawable="@android:color/transparent" />
<item android:state_selected="false"
android:drawable="@color/blue_train" />
</selector>
list_selector.xml 位于可绘制文件夹中,用于指定颜色。
现在的问题是,当我从列表视图中选择一项并滚动列表时,所选项目的背景颜色也会根据滚动向下/向上移动。
请向我提供解决方案,以便所选项目的背景颜色保持滚动时的状态。
编辑:这里是通过选择单个项目滚动列表视图的屏幕截图。蓝色保持原样
请指教。
选择器中似乎未清除状态导致此问题。使用一个类似的
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Selected -->
<item
android:state_focused="true"
android:state_selected="false"
android:drawable="@drawable/focused"/>
<!-- Pressed -->
<item
android:state_selected="true"
android:state_focused="false"
android:drawable="@drawable/pressed" />
<!-- default -->
<item android:drawable="@drawable/default" />
</selector>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)