Android 给控件加上阴影

本文介绍如何在Android中动态设置控件阴影,包括阴影颜色、偏移量和范围。通过自定义ShadowLayout,支持矩形、圆形和圆角阴影,并提供了详细代码实现。
摘要由CSDN通过智能技术生成

这篇需求———需要动态设置控件的阴影颜色

网上搜了许多,最后定位到ShadowLayout这个控件,使用起来简单,但是只支持圆形和长方形

如果是圆角就不行了

于是再其的基础上做了修改

下面说使用方法

xml调用

<com.luoy.blackdoplanet.common.untils.ShadowLayout
    android:id="@+id/sh_shap"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:layout_centerVertical="true"
    app:shadowDx="0dp"
    app:shadowDy="0dp"
    app:shadowShapeRad="26dp"
    app:shadowRadius="4dp"
    app:shadowShape="shap"
    app:shadowSide="all">

    <TextView
        android:id="@+id/tv_com"
        android:layout_width="@dimen/dp90"
        android:layout_height="@dimen/dp26"
        android:gravity="center"
        android:text="去完成"
        android:textColor="@color/white" />
</com.luoy.blackdoplanet.common.untils.ShadowLayout>

需要包含别的控件使用

在attrs中加入

<!-- ShadowLayout 阴影 -->
<declare-styleable name="ShadowLayout">
    <attr name="shadowColor" format="color"/>
    <attr name="shadowRadius" format="dimension"/>
    <attr name="shadowDx" format="dimension"/>
    <attr name="shadowDy" format="dimension"/>
    <attr name="shadowShapeRad" format="dimension"/>
    <attr name="shadowShape">
        <flag name="rectangle" value="0x0001"/>
        <flag name="oval" value="0x0010"/>
        <flag name="shap" value="0x0011"/&g
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值