• listview cacheColorHint,listSelector属性


    ListView是常用的显示控件,默认背景是和系统窗口一样的透明色,如果给ListView加上背景图片,或者背景颜色时,滚动时listView会黑掉,
    原因是,滚动时,列表里面的view重绘时,用的依旧是系统默认的透明色,颜色值为#FF191919,
    要改变这种情况,只需要调用listView的setCacheColorHint(0),颜色值设置为0
    或者xml文件中listView的属性 Android:cacheColorHint="#00000000"即可,
    滚动时,重绘View的时候就不会有背景颜色。
     android:listSelector="#00000000"

    进行上面的设置之后,ListView点击item时就没有任何现象了,

    android:listSelector="@null"不可以实现。
    自定义listview的时候,当你不使用android:cacheColorHint=“#00000000”会出现下面选中一个空间黑色底色的情况,破坏整体美观度:
    当你不使用android:listSelector属性,默认会显示选中的item为橙黄底色,有时候我们需要去掉这种效果:

    listview 拖动 背景图 显隐 

    <!-- 最后一条item所在的位置会闪烁 -->
        
                <ListView
                    android:id="@+id/recommand_app_list"
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent"
                    android:layout_below="@id/recommands_list_view_header_divider"
                    android:fadingEdge="none"
                    android:scrollbars="none"
                    android:scrollingCache="true" > 
                </ListView> 
    <!--修复问题: 最后一条item所在的位置会闪烁 -->
        
                <ListView
                    android:id="@+id/recommand_app_list"
                    android:layout_width="fill_parent"
                    android:layout_height="fill_parent"
                    android:layout_below="@id/recommands_list_view_header_divider"
                    android:background="@drawable/ic_content_bg_repeat"
                    android:divider="@drawable/ic_list_divider_repeat"
                    android:dividerHeight="1dp"
                    android:fadingEdge="none"
                    android:persistentDrawingCache="none"
                    android:scrollbars="none"
                    android:scrollingCache="false"
                    android:smoothScrollbar="true" > 
                </ListView>

    ListView是一个经常要用到的android控件,现总结遇到过的一些美化的小细节。

    1、listview在拖动的时候背景图片消失变成黑色背景,等到拖动完毕我们自己的背景图片才显示出来

    解决:在XML中加入

    android:scrollingCache=”false” 或 android:cacheColorHint=”#00000000″

    2、listview的上边和下边有黑色的阴影

    解决: android:fadingEdge=”none”

    3、修改listview的Item默认选择时的黄色背景

    解决:在java文件中使用listview.setSelector()方法,或使用如下代码

    android:listSelector="#00000000"//这样写是透明的,也可加入Drawable图片

    4、lsitview的每一项之间需要设置一个图片做为间隔

    解决: android:divider=”@drawable/list_driver”

     
     
     
     
  • 相关阅读:
    简单伪类
    购物网页css
    「WC2020T2」猜数
    ARC 103
    Codeforces 1198F
    ZJOI2019二试游记
    ZJOI2019一试游记
    「WC2015」未来程序
    「CodeForces Round #545 Div2」划水记
    「CF1116」Microsoft Q# Coding Contest
  • 原文地址:https://www.cnblogs.com/zhujiabin/p/4223100.html
Copyright © 2020-2023  润新知