• Android ProgressBar 进度条荧光效果


    http://blog.csdn.net/ywtcy/article/details/7878289

    这段时间做项目,产品需求,进度条要做一个荧光效果,类似于Android4.0 浏览器中进度条那种样子。刚开始,百思不得其姐啊,还以为是用sharp文件或者canvas直接画出来的。后来一怒之下,把系统浏览器的apk包给解开了,坑爹的是,那个荧光效果的进度条居然是用的一张.9的图片,恍然大悟啊,不过,谷哥还是强大了一下,他的进度条用的并不是ProgressBar,而是重写的ImageView,当然,这个就不在今天的讨论范围了,呵呵,感兴趣的同学可以去看一下系统浏览器的源码。

    这是Android 4.0中浏览器加载的效果,那个进度条,很惹眼的说~~

    而真相居然是一张制作巧妙的.9图片:progress.9.png(这里不得不赞一下Android中的.9图片(Nine-patch),真的很方便)

    当然使用起来就容易了,看代码:

    /res/layout/activity_main.xml

    [html] view plaincopy
    1. <ProgressBar  
    2.        android:id="@+id/pb"  
    3.        style="?android:attr/progressBarStyleHorizontal"  
    4.        android:layout_width="fill_parent"  
    5.        android:layout_height="wrap_content"  
    6.        android:layout_below="@id/tv"  
    7.        android:progressDrawable="@drawable/progress_drawable" />  
    /res/drawable/progress_drawable.xml
    [html] view plaincopy
    1. <?xml version="1.0" encoding="utf-8"?>  
    2. <layer-list xmlns:android="http://schemas.android.com/apk/res/android" >  
    3.   
    4.     <item android:id="@android:id/progress">  
    5.         <clip android:drawable="@drawable/progress" />  
    6.     </item>  
    7.   
    8. </layer-list>  
    最后效果是这样的

    不过,实际体验中貌似有点不太完美,但理论上应该是这样的,呵呵,如果有错误之处,还望各位看官批评指正!

    还有一个问题就是,这个进度条的更新感觉是一跳一跳的,不是很平滑,不知道能否加个动画效果让进度条的更新更加平滑一点,有类似经验的同学还望支个招啊,多谢了!

  • 相关阅读:
    《RocketMQ源码系列》心跳机制
    《RocketMQ源码系列》broker是如何注册到nameserver的
    使用redis客户端工具RedisClient连接windows和linux下的redis并解决无法连接redis的问题
    windows下安装Linux
    redis客户端工具RedisClient的使用
    redis哨兵机制配置
    redis数据的两种持久化方式rdb和aof对比(二)
    redis数据的两种持久化方式rdb和aof对比(一)
    windows下的redis主从复制
    redis持久化配置:rdb和aof
  • 原文地址:https://www.cnblogs.com/lbangel/p/4335886.html
Copyright © 2020-2023  润新知