软件编程
位置:首页>> 软件编程>> Android编程>> Android(2.2/2.3系统)Gallery解决默认和横竖屏切换选中状态问题

Android(2.2/2.3系统)Gallery解决默认和横竖屏切换选中状态问题

作者:lqh  发布时间:2022-09-30 19:06:18 

标签:Android,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选中项时存在,且高版本中不存在。

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com