Android(2.2/2.3系统)Gallery解决默认和横竖屏切换选中状态问题
前言
Gallery的Item使用的是一个ImageView+TextView,并且为其设置了selector,当使用setSelection设置时、横竖屏切换时Item的状态不会改变,这个目前在2.2/2.3系统中存在,高版本如4.0是不存在的。
正文
一、第一步,解决ImageView的状态问题
为ImageView设置 :android:focusableInTouchMode="true"
注意同样属性设置TextView不管用。
二、第二步,手动控制文本根据状态不同设置不同颜色
2.1 在onConfigurationChanged中通知Gallery的Adapter数据更新notifyDataSetChanged
2.2 在Gallery的onItemSelected中通知Gallery的Adapter数据更新notifyDataSetChanged
2.3 在Gallery Adapter的getView中根据当前选中索引修改文本颜色
if (position == mGallery.getSelectedItemPosition()) { title.setTextColor(COLOR_NAV_SELECTED); } else title.setTextColor(COLOR_NAV_NORMAL);
其中COLOR_NAV_SELECTED和COLOR_NAV_NORMAL分别是选中和未选中的颜色。
结束
注意,该问题在手动滑动Gallery时不存在,通过setSelection更改Gallery选中项时存在,且高版本中不存在。
以上就是对Android(2.2/2.3版本)Gallery 常出现错误的分析,希望能帮助开发Android的朋友。
相关文章
Android studio 生成带Kotlin文档的实现方式
这篇文章主要介绍了Android studio 生成带Kotlin文档的实现方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-03-03Android使用Recyclerview实现图片水平自动循环滚动效果
这篇文章主要为大家详细介绍了Android使用Recyclerview实现图片水平自动循环滚动效果,实现精彩的跑马灯效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2017-08-08Android项目实战之ListView悬浮头部展现效果实现
这篇文章主要给大家介绍了Android项目实战之ListView悬浮头部展现效果实现的相关资料,文中通过实例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下2022-01-01Android实现两个ScrollView互相联动的同步滚动效果代码
这篇文章主要介绍了Android实现两个ScrollView互相联动的同步滚动效果代码,涉及Android操作ScrollView实现联动功能的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下2015-10-10
最新评论