android常见的自定义drawable资源

本文介绍如何使用XML绘制渐变阴影背景、定制进度条样式及创建圆形元素。通过详细示例展示了不同形状的绘制方法,包括渐变色配置、边框设置等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


1.渐变阴影背景


<shape xmlns:android="http://schemas.android.com/apk/res/android"
      android:shape="rectangle">
   <!-- 指定圆角矩形的4个圆角的半径 -->
   <corners android:topLeftRadius="20px"
      android:topRightRadius="5px"
      android:bottomRightRadius="20px"
      android:bottomLeftRadius="5px"/>
   <!-- 指定边框线条的宽度和颜色 -->
   <stroke android:width="4px" android:color="#f0f" />
   <!-- 指定使用渐变背景色,使用sweep类型的渐变
   颜色从红色→绿色→蓝色 -->
   <gradient android:startColor="#f00"
      android:centerColor="#0f0"
      android:endColor="#00f"
      android:angle="270"
      android:centerX="0.5"
      android:centerY="0.5"
      />
   <!--angle的值:从左到右为0;然后逆时针旋转,90度为从下到上,270为从上到下。
   centerx和centery的值取0-1;表示中间色的位置,中间色分别是0,0.5,1。中间色为0的,则渐变的中间色的位置在最上面;中间色为0.5的,则渐变的中间色在屏幕中间;中间色为1 的,则中间色在屏幕下部。-->
</shape>


2.进度条






<?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>
            <solid android:color="@color/lechild_player_ui_seekbar_bg" />
        </shape>
    </item>
    <item android:id="@android:id/secondaryProgress">
        <clip>
            <shape>
                <solid android:color="@color/lechild_player_ui_seekbar_bg" />
            </shape>
        </clip>
    </item>
    <item android:id="@android:id/progress">
        <clip>
            <shape>
                <gradient
                    android:angle="225"
                    android:endColor="@color/lechild_player_seekbar_style_progress_end"
                    android:startColor="@color/lechild_player_seekbar_style_progress_start" />
            </shape>
        </clip>
    </item>
</layer-list>



<SeekBar
    android:progress="60"
    android:secondaryProgress="80"
    android:max="100"
    android:id="@+id/play_seek_bar"
    android:layout_width="@dimen/lechild_player_ui_seek_timelinebg_width"
    android:layout_height="match_parent"
    android:layout_centerVertical="true"
    android:layout_marginRight="@dimen/lechild_player_ui_seek_timelinebg_margin_right"
    android:layout_toRightOf="@+id/play_btn_mark"
    android:focusable="false"
    android:maxHeight="4dp"
    android:minHeight="4dp"
    android:progressDrawable="?attr/lechild_drawable_lechild_player_seek_bar_style"
    android:thumb="?attr/lechild_drawable_lechild_player_thumb_image"
    android:thumbOffset="0dp" />


3.圆形




<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="oval"
    android:useLevel="false">
    <solid android:color="#fff66fff" />
</shape>






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值