【解决】GridView设置了 android:listSelector,选中某项背景色也会被选中
2013-12-19 16:40
127 查看
listSelector是listview的一个属性用来控制某一项被选中时的颜色,在4.0以后的系统中这个listSelector表现正常,在2.3和2.2(可能还有其他版本)中这个属性会变成点击某项修改整个listview的背景颜色。
为了解决这个问题,你不能在这个属性里面直接使用颜色,你需要创建一个在res/drawable/里面创建一个shape
参考http://stackoverflow.com/questions/10989225/android-listview-entire-list-getting-selected
为了解决这个问题,你不能在这个属性里面直接使用颜色,你需要创建一个在res/drawable/里面创建一个shape
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> <solid android:color="@color/my_list_item_pressed_color" /> </shape>然后再创建一个selector:
xmlns:android="http://schemas.android.com/apk/res/android" > <item android:state_pressed="true" android:drawable="@drawable/list_item_pressed_bg" /> <item android:drawable="@android:color/transparent" /> </selector>最后再把listSelector属性设置成这个selector:
<ListView ..... android:listSelector="@drawable/list_item_selector" />在2.2和2.3上都可以正常工作了。
参考http://stackoverflow.com/questions/10989225/android-listview-entire-list-getting-selected
相关文章推荐
- 【解决】GridView设置了 android:listSelector,选中某项背景色也会被选中
- android RadioGroup中设置selector后出现多个别选中的RadioButton的解决办法
- Android GridView之添加分隔线,动态设置高度,实现高度自适应,并解决第一个item不显示的问题
- 解决Android当中GridView的Item子控件中有ImageView图片大小不一致问题,动态设置ImageView控件大小
- (九)android中通过selector设置TextView的文字选中和正常时候的颜色
- Android GridView 设置指定项被选中的背景图片并滚动到指定项(如果带有滚动条)
- Android关于listview设置属性 android:listselector = "@null" 无效的问题
- android LinearLayout设置selector不起作用解决
- Android ListView的item背景色设置和item点击无响应的解决方法
- GridView的getChildAt(postion)获取不到指定位置的item的解决方法(动态设置指定item为选中状态)
- android 设置listview item选中背景色
- Android RadioGroup中设置默认选中RadioButton 后,选中两个的问题 解决方法
- 【Android解决方案】GridView第一次选中不调用onItemSelected()的解决办法
- 利用selector shape方式改变listView或者GridView的Item选中边框(代码中设置setSelector)
- Android中Listview点击item不变颜色及设置listselector 无效的解决方案
- Android-在XML和Java代码中设置背景在不同状态的效果: <selector>/StateListDrawable
- android gridview几个重要属性(android:listSelector自带内部padding分析)
- 关于android 设置Drawable selector按下去背景色无变化问题
- Android GridView 设置指定项被选中的背景图片并滚动到指定项(如果带有滚动条) .
- android listview item 被选中背景色设置