• Android 自定义seekbar中,thumb被覆盖掉一部分问题


    (图一)  (图二)    (图三)

    做一个自定义的seekbar,更改其背景图片:

    <com.android.Progress
                    android:id="@+id/focus_seekbar"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_below="@id/seekbar_add"   
                    android:progressDrawable="@drawable/seekbar_img" 
                    android:thumb="@drawable/thumb"    
                    android:max = "60"/>

    定义progressDrawable即为背景图片。thumb为滑块图片

    如上定义xml文件,启动程序,生成如图一。 thumb滑块不能显示完全,一部分被隐藏掉。

    增加属性:

    android:thumbOffset="0dip"

    即可实现thumb不被覆盖,即最下方位置如图三所示,不会出现图一情况。

    网上有个竖直的VerticalSeekBar,简单说一下他的使用:

    当滑块的大小比下面的背景大时,此时要设置

                    android:minHeight="19dip"
                    android:maxHeight="19dip"

    19dip即为seek_img图片的宽度。

    而控件的layout_width值即位滑块的width和height值

    <com.android.VerticalSeek
                    android:id="@+id/focus_seekbar"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"                
                    android:progressDrawable="@drawable/seekbar_img"  
                    android:thumb="@drawable/thumb"    
                    android:thumbOffset="0dip"
                    android:max = "59"
                    android:layout_centerVertical="true"                
                    android:minHeight="19dip" 
                    android:maxHeight="19dip"
                    android:paddingLeft="-15dip"
                    android:paddingRight="-15dip"/>

     这么个小问题,用了我半天时间才搞出来。网上资源太少了,给大家分享一下。

    <?xml version="1.0" encoding="utf-8"?>
    <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
       
        <item android:id="@android:id/background">
           <shape>
                <corners android:radius="5dip" />
                <gradient
                        android:startColor="#ff364956"
                        android:centerColor="#ff444444"
                        android:centerY="0.75"
                        android:endColor="#ff00112e"
                        android:angle="90"
                />
            </shape>
        </item>
       
        <item android:id="@android:id/secondaryProgress">
           <clip>
                <shape>
                    <corners android:radius="5dip" />
                    <gradient
                            android:startColor="#80364956"
                            android:centerColor="#802f67a6"
                            android:centerY="0.75"
                            android:endColor="#8000112e"
                            android:angle="270"
                    />
                </shape>
            </clip>
        </item>
       
        <item android:id="@android:id/progress">
            <clip>
                <shape>
                    <corners android:radius="5dip" />
                    <gradient
                            android:startColor="#ff9ee5ff"
                            android:centerColor="#ff9ee5ff"
                            android:centerY="0.75"
                            android:endColor="#ff9ee5ff"
                            android:angle="90"
                    />
                </shape>
            </clip>
        </item>
       
    </layer-list>
  • 相关阅读:
    Protobuf
    CPU profiling
    转 Unicode 和 UTF-8 的区别
    Redis数据结构底层知识总结
    MySQL 加锁处理分析 ---非常牛逼
    MySQL Gap Lock问题
    利用Linux文件系统内存cache来提高性能
    Xcode7安装CocoaPods
    字符串排列组合算法
    iOS项目开发实战——学会使用TableView列表控件(四)plist读取与Section显示
  • 原文地址:https://www.cnblogs.com/zhujiabin/p/4287856.html
Copyright © 2020-2023  润新知