首页 > 其他分享 >Android动态设置shape形状背景,GradientDrawable动态设置背景色、圆角

Android动态设置shape形状背景,GradientDrawable动态设置背景色、圆角

时间:2022-09-28 19:56:49浏览次数:53  
标签:GradientDrawable 18F context dip2px toFloat 设置 drawable 动态 DensityUtil

1、静态设置

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <!--填充色-->
    <!--<solid android:color="#FF409DFE"></solid>-->
    <solid android:color="#00000000"></solid>

    <!-- 矩形的边线 -->
    <!--<stroke android:color="#7097E4"
        android:width="1dp"></stroke>-->

    <!--圆角大小-->
    <corners
        android:bottomRightRadius="18dp"
        android:topRightRadius="18dp"
        ></corners>
    <!--android:radius="10dp"-->

    <!--android:topLeftRadius="7dp"
    android:bottomLeftRadius="7dp"-->
</shape>

  

2、代码动态设置:

//设置图片四个角圆形半径:1、2两个参数表示左上角,3、4表示右上角,5、6表示右下角,7、8表示左下角
                        val k = floatArrayOf(
                            DensityUtil.dip2px(context,18F).toFloat(),//左上
                            DensityUtil.dip2px(context,18F).toFloat(),//左上
                            0F,
                            0F,
                            0F,
                            0F,
                            DensityUtil.dip2px(context,18F).toFloat(),//左下角
                            DensityUtil.dip2px(context,18F).toFloat(),//左下角
                        )
                        val drawable = GradientDrawable()
                        //drawable.cornerRadius = DensityUtil.dip2px(context,18F).toFloat()
                        drawable.cornerRadii = k
                        //drawable.setStroke(1, Color.parseColor("#cccccc"))
                        drawable.setColor(Color.parseColor(data.color1))
                        holder.binding.viewColor1.setBackgroundDrawable(drawable)

  

 

 

参考于:

https://www.twblogs.net/a/5d010ee3bd9eee14644f96fc/?lang=zh-cn

https://blog.csdn.net/sinat_41890480/article/details/108773488

标签:GradientDrawable,18F,context,dip2px,toFloat,设置,drawable,动态,DensityUtil
From: https://www.cnblogs.com/changyiqiang/p/16739359.html

相关文章

  • CSS 设置文字只显示一行,多余显示省略号
    CSS设置文字只显示一行,多余显示省略号1.view-text{2/**3思路:41.设置inline-block属相52.强制不换行63.固定高度74.隐藏超出......
  • YYEVA动效播放器--动态元素完美呈现新方案
    作者|龙卷风导读:伴随着计算机视觉领域的发展,动画也变得越来越炫酷。各种动效解决方案在画质提升时,也要兼顾文件体积和性能。透明MP4方案,能让设计师制作动画所见即所得,充分......
  • 反射、注解、动态代理的理解
    反射的核心就是拿到了.java编译后的.class文件。通过一系列的API,可以拿到该类中的成员:构造器、属性、方法等。注解,可以告诉编译器或者JVM做一些事情。比如说重写的@Overri......
  • 通过Oracle存储过程执行动态SQL输出结果集
    好久没用发现有些记不得了,整理记录下CREATEORREPLACEPROCEDUREP_TEST_OUTCUR1(O_CUROUTSYS_REFCURSOR)ASR_ERR1EXCEPTION;--自定义异常V_SQLSVARCHAR2(20......
  • JavaScript异步加载的三种方式——async、defer、动态创建
    async和deferhtml4.0中定义了defer;html5.0中定义了async。如果没有defer和async,浏览器会立即加载并执行指定的JS脚本,并不会等待后续载入的文档元素。如果有async,加载后......
  • 使用 Scrapy + Selenium 爬取动态渲染的页面
    在通过scrapy框架进行某些网站数据爬取的时候,往往会碰到页面动态数据加载的情况发生,如果直接使用scrapy对其url发请求,是绝对获取不到那部分动态加载出来的数据值。但是通过......
  • barManager的设置
    Devexpress之barManager隐藏菜单栏左边的竖线和右边的箭头?1、隐藏菜单栏上右边的箭头属性设置:OptionsBar=>>AllowQuickCustomization=False2、隐藏菜单栏左边的竖线属......
  • [答疑]EA中设置用例关联关系设定时自动带有起始→目标(箭头)
    EA中设置用例关联关系设定时自动带有起始→目标(箭头)进化论*熊飞(2017年11月9日):潘老师,能在EA中设置业务用例关联关系设定时能自动带有起始→目标(箭头)吗?潘加宇:Start>Wo......
  • win32com: excel 设置单元格颜色
    1.单元格字体设置颜色r=sheet.usedRange#选定单元格区域r.Font.ThemeColor=4#颜色主题设置字体色r.Font.ColorIndex=22#颜色索引设置字体色r.Font.C......
  • linux esxi虚拟机双网卡设置
    一、在esxi后台为虚拟机添加一个网卡    二、在虚拟机ssh登录,ipa可以看到新增的网卡   三、执行nmtui图形化配置网卡  选择add增加一个连接 ......