android gallery 选中,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的朋友。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值