zoukankan      html  css  js  c++  java
  • 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>
  • 相关阅读:
    Blend混合模式 与 20余种颜色混合模式代码实现
    unity2020相关
    Unity3D研究院之加密Assetbundle不占内存(一百零五)
    Unity AssetBundle 加密
    Unity AssetBundle高效加密案例分享
    AssetBundle压缩/内部结构/下载和加载
    uml类图
    l2j开源java mmo服务器
    Unity开发(三) AssetBundle同步异步引用计数资源加载管理器
    Unity 引擎资源管理代码分析
  • 原文地址:https://www.cnblogs.com/zhujiabin/p/4287856.html
Copyright © 2011-2022 走看看