美化你的android程序:自定义ListView背景
文章分类:移动开发
 
在Android中,ListView是最常用的一个控件,在做UI设计的时候,很多人希望能够改变一下它的背景,使他能够符合整体的UI设计,改变背景背很简单只需要准备一张图片然后指定属性 android:background="@drawable/bg",不过不要高兴地太早,当你这么做以后,发现背景是变了,但是当你拖动,或者点击list空白位置的时候发现ListItem都变成黑色的了,破坏了整体效果,如下图所示

 
这是为什么呢?
这个要从Listview的效果说起,默认的ListItem背景是透明的,而ListView的背景是固定不变的,所以在滚动条滚动的过程中如果实时地去将当前每个Item的显示内容跟背景进行混合运算,所以android系统为了优化这个过程用,就使用了一个叫做android:cacheColorHint的属性,在黑色主题下默认的颜色值是#191919,所以就出现了刚才的画面,有一半是黑色的
那怎么办呢?
如果你只是换背景的颜色的话,可以直接指定android:cacheColorHint为你所要的颜色,如果你是用图片做背景的话,那也只要将android:cacheColorHint指定为透明(#00000000)就可以了,当然为了美化是要牺牲一些效率的。最后美化的效果如图:

转载于:https://blog.51cto.com/zhaohaiyang/531779

自定义ListView背景(解决了拖动变黑的效果)相关推荐

  1. grayscale实现全站及局部变黑的效果 – 兼容IE/FF等浏览器

    grayscale实现全站及局部变黑的效果 – 兼容IE/FF等浏览器 时间:11-11-10所属栏目:前端效果 来源: james.padolsey.com 点击:470次 大小:0.04 MB 下 ...

  2. [转]listview中设置背景图片后 拉动变黑

    经本人亲测有效... 在Android中,ListView是最常用的一个控件,在做UI设计的时候,很多人希望能够改变一下它的背景,使他能够符合整体的UI设计,改变背景背很简单只需要准备一张图片然后指定 ...

  3. 计算机无法设置壁纸黑屏,Win7电脑壁纸变黑屏怎么办

    不少用户在长久对着电脑系统自带的壁纸后,会慢慢产生一些厌烦心理:或是直接就对电脑系统自带的壁纸不满意的,这时候就会选择更换电脑桌面壁纸了.但最近有win7系统用户反馈:自己设置了电脑桌面壁纸,而开机时 ...

  4. 计算机无法设置壁纸黑屏,Win7电脑壁纸变黑屏怎么办?不妨试试设置这些地方吧...

    原标题:Win7电脑壁纸变黑屏怎么办?不妨试试设置这些地方吧 不少用户在长久对着电脑系统自带的壁纸后,会慢慢产生一些厌烦心理:或是直接就对电脑系统自带的壁纸不满意的,这时候就会选择更换电脑桌面壁纸了. ...

  5. win8计算机背景黑色,Win8电脑桌面背景突然变黑的解决方法

    不少用户都习惯在自己的电脑下载一些好看的背景图当做桌面,但是在此过程中,不少用户表示经常遇到电脑背景桌面突然黑屏的情况.这是怎么回事呢?如何解决这个问题呢?下面,U大侠小编就给大家介绍Win8电脑桌面 ...

  6. 计算机无法设置壁纸黑屏,win10电脑桌面壁纸变黑屏怎么修复_win10壁纸总是消失黑屏如何解决...

    对于新入手的win10系统电脑,许多用户都不满意系统自带的经典壁纸,因此在拿到电脑时也会将其进行更换,但是最近有的用户发现自己的win10电脑桌面壁纸变成黑屏了,怎么换壁纸也是同个效果,那么win10 ...

  7. Win11壁纸变黑怎么办?Win11壁纸变黑了的解决方法

    Win11壁纸变黑怎么办?出现这一情况的原因可能有壁纸设置失误以及电脑卡住等原因,对此下面小编就为大家提供Win11壁纸变黑了的两种解决方法,有需要的朋友们可以根据自己的情况选择相应的方法解决. 这里 ...

  8. ue4 导出模型_UE4构建光照后模型变黑,二套UV解决办法

    在3dmax中制作的模型导入ue4,构建关照渲染后模型变黑并出现了下列错误提示信息:"11 对象拥有重叠的UV.""11 Lightmap UV are overlapp ...

  9. 纯 CSS 解决自定义 CheckBox 背景颜色问题

    纯 CSS 解决自定义 CheckBox 背景颜色问题 参考文章: (1)纯 CSS 解决自定义 CheckBox 背景颜色问题 (2)https://www.cnblogs.com/ZweiZhao ...

最新文章

  1. 为什么SQL正在击败NoSQL,这对未来的数据意味着什么
  2. 平板电脑触摸屏驱动_解答!工业平板电脑的触摸屏如何升级?
  3. “远程银行”优秀厂商认证!网易云信入选《区域性银行数字化厂商全景报告》...
  4. Redhat7 Dell服务器驱动安装(Bin格式)
  5. Oralce EBS Alert
  6. JavaScript中charAt函数
  7. HALCON 21.11:深度学习笔记(2)
  8. c语言矩阵键盘反转法扫描,行列扫描法,反转法,状态机法三种矩阵键盘扫描方法详解 带程序...
  9. python网络爬虫(web spider)系统化整理总结(一):入门
  10. Android地图开发之OpenStreetMap基础教程
  11. 微信公众号创建菜单报错40016
  12. 运行 Webpack 项目图片和favicon.ico找不到, 图片404错误
  13. [leetcode]322. 零钱兑换(Coin Change )C++代码实现
  14. D. Fixed Point Guessing
  15. Android6.0 WMS(八) 显示Activity的启动窗口
  16. 【JavaScript】获取指定字符串
  17. P2P关卡——资金存管与资金托管
  18. 每天一个npm包 之 qs
  19. 靶机渗透练习96-hacksudo:Thor
  20. C: error: incompatible types when initializing type ‘int’ using type ‘atomic_t’ {aka ‘struct <anonym

热门文章

  1. 基于模糊控制的自平衡小车的研究
  2. 计算机科学期刊拒稿概率大吗,发表论文初审过了复审被拒概率高不高
  3. aes密钥扩展java实现,需要使用bouncycastle将AES 256密钥“扩展”为...
  4. 排序算法之计数排序、基数排序和桶排序
  5. 《STL源码剖析》学习-- 1.9-- 可能令你困惑的C++语法1
  6. 学习鸟哥的Linux私房菜笔记(1)——Linux系统入门
  7. Java直接内存与堆内存
  8. NumberUtils用法
  9. 学生如何提高专业英文阅读能力--施一公教授
  10. Windows下安装Cygwin配置Hadoop集群