zoukankan      html  css  js  c++  java
  • [Android疑难杂症]Gallery默认和横竖屏切换选中状态问题(2.3、2.3系统存在)


    前言

    Gallery的Item使用的是一个ImageView+TextView,并且为其设置了selector,当使用setSelection设置时、横竖屏切换时Item的状态不会改变,这个目前在2.2、2.3系统中存在,高版本如4.0是不存在的。


    声明
      欢迎转载,但请保留文章原始出处:) 
        博客园:http://www.cnblogs.com

        农民伯伯: http://over140.cnblogs.com  

     

    正文

    一、第一步,解决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选中项时存在,且高版本中不存在。 

  • 相关阅读:
    Run Shell Commands in Python
    在Linux系统上查找文件
    Build a Beautiful oh-my-zsh Themes
    Build VM Cluster on CentOS Host
    色彩学笔记
    Pr PS 笔记
    pthread 笔记
    图片格式
    win DLL 笔记
    XVS 操作
  • 原文地址:https://www.cnblogs.com/over140/p/2628565.html
Copyright © 2011-2022 走看看