android seekbar 踩坑之路

最近项目中有用到seekbar,之前对这东西不太了解,趁机来踩坑。

seekbar样式

按我觉得Material 中的还不算难看了。但是美工给了自己的样式,还是得改。
主要有这2个属性:

android:thumb="@drawable/thumb"
android:progressDrawable="@drawable/seekbar_progress"

thumb 指的是进度条上那个滑块,progressDrawable 指的是进度条。

seekbar

这是progressDrawable :

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@android:id/background">
        <shape>
            <solid android:color="#bfbfbf" />
       </shape>
    </item> 
   <item android:id="@android:id/secondaryProgress">
        <clip>
            <shape>
                <solid android:color="#4765e5" />
            </shape>
        </clip>
    </item>
    <item android:id="@android:id/progress">
        <clip>
            <shape>
                <solid android:color="#4765e5" />
            </shape>
        </clip>
    </item>
</layer-list>

这里说一下,android:id="@android:id/background" 背景指的是上图中灰色的部分。android:id="@android:id/progress"是蓝色部分。自己一开始把secondaryProgress 和background 给搞混了。

thumb的话就是简单的一张图片,再指定一下大小,seekbar默认是有10dp 的height的。

android:maxHeight="5dip"
android:minHeight="5dip"

这样大概就能得到图中的样子了。
然后,最后。跑起来发现滑块thumb四周竟然不是透明的。扯蛋! 赶紧去看了一下icon 发现icon四周是透明的没错。又一阵蛋疼。查一下发现,原来 The Material seek bar has split track enabled by default
所以我们要把它disable掉。
android:splitTrack="false"

Over

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • afinalAfinal是一个android的ioc,orm框架 https://github.com/yangf...
    passiontim阅读 15,647评论 2 45
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 174,836评论 25 709
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 6,784评论 0 17
  • 散落的星星点缀了黑夜这块大幕布,单调而出彩。 装修华丽的别墅中,一个镀着金色油漆的高档宠物屋,安在角落离垃圾桶不远...
    妖孽果子王阅读 473评论 0 1
  • 晚上做梦,梦到好久之前的一件小事,竟然在梦中感觉到了久违的轻松与快乐,想想也是讽刺。 梦里的我回到了上小学的时候,...
    Iam阿喵阅读 565评论 0 0