当我点击Android中的列表项时,我总是得到一个蓝色背景。事件如果我使用自定义布局,当我点击时,我的布局周围的2-5dp空间可能是蓝色。此外,文本视图变得更暗。如何在单击列表项时禁用视图中的任何更改?
答案 0 :(得分:5)
我知道它迟到了,但也可以使用listview的setSelector
方法并将其设置为android.R.color.transparent
。您还可以在布局文件中使用android:listSelector
来获得相同的结果。
答案 1 :(得分:3)
在/res/values/themes.xml
中为您的应用创建自定义主题:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<!-- application theme -->
<style name="CustomTheme" parent="android:style/Theme.Light">
<!-- widget styles -->
<item name="android:listViewStyle">@style/ListView</item>
</style>
<!-- list view -->
<style name="ListView" parent="@android:style/Widget.ListView">
<item name="android:background">#ffffff</item>
<item name="android:cacheColorHint">#ffffff</item>
<item name="android:divider">#cccccc</item>
<item name="android:dividerHeight">1px</item>
<item name="android:listSelector">@drawable/list_selector_background</item>
<item name="android:fadingEdge">none</item>
</style>
</resources>
在AndroidManifest.xml
中指定主题:
<application
...
android:theme="@style/CustomTheme" >
答案 2 :(得分:3)
您可以在ListView上将android drawSelectorOnTop属性设置为false,并且在单击某个项目时不会有任何背景。
例如:
<ListView android:layout_width="fill_parent" android:layout_height="fill_parent"
android:drawSelectorOnTop="false"/>
答案 3 :(得分:2)
使用此
<ListView
android:listSelector="@android:color/transparent"
android:cacheColorHint="@android:color/transparent"
/>
有关详细信息,请访问此处
http://developer.android.com/reference/android/widget/ListView.html
答案 4 :(得分:0)
我这样做了:
<ListView
android:listSelector="@android:color/transparent"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>