Android 动态更改Shape(GradientDrawable) 及Seletor(StateListDrawable)资源

TensorFlow 1.14 + Mask R-CNN 实战指南:环境锁死、RoIAlign修复与训练稳定性 Mask R-CNN 是基于 Faster R-CNN 的两阶段实例分割模型,其核心在于 RoIAlign 层对像素级定位的精度保障。在 TensorFlow 1.14 这一长期服役版本中,受限于 Graph 模式、CUDA/cuDNN 严格 ABI 兼容性及 Keras 独立生态,标准实现常因坐标偏移、梯度耦合和张量形状不匹配导致训练失败或 mask AP 显著下降。本文从计算图构建原理出发,解析 cuDNN 7.4.1 对 FP16 梯度收敛的物理约束、keras==2.2.4 与 tf.keras 的 阅读详情

Shape(GradientDrawable)

android.graphics.drawable 
类 GradientDrawable 
java.lang.Object 
SubClass  android.graphics.drawable.Drawable 
SubClass android.graphics.drawable.GradientDrawable 

public class GradientDrawable extends Drawable

TextView textView = new TextView(this);
GradientDrawable drawable = new GradientDrawable();
drawable.setCornerRadius(5);
drawable.setStroke(1, Color.parseColor("#cccccc"));
drawable.setColor(Color.parseColor("#eeeeee"));
textView.setBackgroundDrawable(drawable);


Seletor(StateListDrawable)

 private StateListDrawable initStateListDrawable() {
        //初始化一个空对象
        StateListDrawable stalistDrawable = new StateListDrawable();
        //获取对应的属性值 Android框架自带的属性 attr
        int pressed = android.R.attr.state_pressed;
        int focused = android.R.attr.state_focused;

        stalistDrawable.addState(new int []{-pressed}, getResources().getDrawable(R.drawable.title_button_back));
        stalistDrawable.addState(new int []{pressed}, getResources().getDrawable(R.drawable.title_button_back_h));
        stalistDrawable.addState(new int []{-focused }, getResources().getDrawable(R.drawable.title_button_back));
        //没有任何状态时显示的图片,我们给它设置我空集合
        stalistDrawable.addState(new int []{}, getResources().getDrawable(R.drawable.title_button_back));
        return stalistDrawable;
    }
相关https://blog.youkuaiyun.com/qinjuning/article/details/7474827





华为HCIP大数据备考实战:从题库精析到834分通关策略 本文详细介绍了华为HCIP大数据认证考试的备考策略,包括题库精析、重点章节突破和考场实战经验。作者以834分的高分通过考试,分享了官方教材的三遍阅读法、自建题库技巧以及各章节核心知识点,帮助考生高效备考并顺利通关。 阅读详情

相关推荐

单片机开发者的福音:3步搞定VSCode智能补全(IAR工程+Clangd实战)

本文为单片机开发者提供了一套高效解决方案,通过EIDE插件将IAR工程导入VSCode,并生成关键的compile_commands.json文件,结合Clangd配置,仅需三步即可实现精准的智能代码补全、一键跳转等现代编辑功能,大幅提升嵌入式开发效率。

coffee的博客 525

Android 中的 StateListDrawable

前言-关于StateListDrawable Android里面经常会在开发中在res/drawable目录下, 使用shape或者selector编写XML文件, 来定制一些View的背景, 而这些XML最终会转换为StateListDrawable *注: 并非所有的XML都是StateListDrawable* 对于StateListDrawable文档中如此描述: 允许您将多个图形图像分配给单个 Drawable,并通过字符串 ID 值替换可见项。它可以在带有 元素的 XML 文件中定义

ansondroider的博客 5214

保姆级教程:在RK3588平台上为IMX415 Sensor配置HDR2曝光(附完整代码与避坑点)

本文提供RK3588平台上为IMX415 Sensor配置HDR2曝光的详细教程,涵盖基础概念、限制条件、实战配置步骤及常见问题解决方案。通过完整代码示例和关键参数解析,帮助开发者高效实现HDR2曝光模式,提升图像质量并避开常见陷阱。

weixin_28685287的博客 284

Android 用state list drawable动态改变按钮点击前后的状态

有时候我们希望按钮在点击时和未点击时显示不同的背景和(或)文字样式,这时我们可以使用state list drawable自定义drawable。 首先我们创建按钮点击状态下应显示的shape(res/drawable/button_shape_pressed.xml): <shape xmlns:android="http://schemas.android.com/apk/res

mg2flyingff的博客 1335

智能音箱麦克风阵列实战:Python实现宽带GSC波束形成(附完整代码)

本文从工程实战角度,详细介绍了如何在智能音箱中利用Python实现宽带GSC波束形成算法。文章深入解析了广义旁瓣消除器(GSC)的核心架构,包括固定波束形成、阻塞矩阵与自适应滤波路径,并提供了完整的仿真代码、关键参数(如LMS步长)调优方法,以及面向嵌入式部署的计算优化与移植考量,旨在帮助开发者构建在真实噪声环境下高效工作的语音增强系统。

opencv7vision的博客 343

Python-自动化绘制股票价格通道线

创建更强大、更可靠的价格通道检测算法。

探索人工智能领域 948

[android]动态改变按钮背景状态 StateListDrawable

  动态改变按钮背景状态   很少用到 上次和六哥聊到。六哥有心 查了下  以下是DEMO     public static StateListDrawable setStateListDrawable(Context mActivity, int up, int down) { StateListDrawable stateListDrawable = new Sta...

ipoolo的专栏 454

【Docker】完美解决拉取镜像超时报错:ERROR: Get https://registry-1.docker.io/v2/

因为我们下载的镜像是外网的镜像资源,所以下载的速度会非常的慢,甚至大概率下载时会报错,所以需要我们配置一个国内的服务器镜像地址,国内服务器镜像地址有很多,这里咱们就说一下阿里镜像加速器的配置方法。

liu_chen_yang的博客 12万+

Android状态列表StateListDrawable的使用

时常我们需要为我们的控件在用户不同操作时显示不同的样式,比如选中和取消的样式,按钮点击和松开的样式,Android为我们提供了状态列表的方法显示不同的样式满足我们的需求。在drawable中我们定义如下文件: <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item andr...

水月洞天 1134

点云结构面智能识别与裂隙网络分析系统

点云结构面智能识别系统摘要 本系统采用深度学习与传统几何算法融合的方法,实现岩石结构面的智能识别与分析。系统包含7个核心模块:点云预处理、结构面识别、分组分割、参数计算、粗糙度分析、裂隙网络生成和可视化。技术路线结合PointNet++深度学习架构与RANSAC、区域生长等传统算法,通过预处理→深度学习识别→几何精修→参数计算→网络构建的流程实现高精度分析。预处理模块实现点云降噪、下采样和法向量估计,深度学习模块基于改进的PointNet++架构进行特征提取和分类。系统支持多种点云格式输入,提供完整的结构面

huanghm88的专栏 346

CUDA内核反汇编实战:用cuobjdump解锁SASS指令的奥秘

本文详细介绍了CUDA内核与SASS指令的关系,以及使用cuobjdump工具进行反汇编分析的方法。主要内容包括:1. CUDA内核的基本概念及其在GPU并行计算中的重要性;2. SASS指令作为底层汇编指令的关键作用;3. cuobjdump工具的安装配置和使用方法;4. 通过数组加法实例演示反汇编过程;5. 深入分析SASS指令格式、分类和执行流程;6. 两个实际案例展示性能优化和问题排查的应用。文章为开发者提供了深入理解CUDA程序底层执行机制的有效途径。

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 439

(Android)一种替换大量selector和shape文件的方法

本篇文章提供了一种用`GradientDrawable`和`StateListDrawable`替换大量selector和shape的xml文件的方法,并在实践中踩到了`Drawable.ConstantState`的坑,通过分析源码对加载Drawable资源有了新的理解,并且解决了遇到的问题。

qq_43478882的博客 916

二、Windows安装Docker到非C盘的全新教程(Windows版)

Windows安装Docker到非C盘的全新教程(Windows版)

funfan的博客 4万+

Android 10 使用 drawable xml 设置渐变背景的坑

1 背景 先说明一下问题的背景。 之前项目有个登录按钮,正常时其背景如下图所示,背景颜色为从左到右的渐变色。 背景 xml 也很简单(没有设置 angle): <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" ...

hust_twj的专栏 5049

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

GradientDrawable和StateListDrawable 的简单使用,以及如何动态改变TextView的背景颜色和文字颜色

Android开发的小伙伴,在遇到TextView 需要设置背景色时,应该会联想到shape <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> ...

冰封砺雪 1699

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

StateListDrawable cannot be cast to android.graphics.drawable.GradientDrawab

项目里面最近很多客户端自定义的按钮形状跟底色要从服务器返回,今天测试遇到一问题,记录一下下: 错误的写法: GradientDrawable gradientDrawable = ((GradientDrawable)((TextView)helper.getView(R.id.tv_subject)).getBackground()); if(null !=item.bcolor &...

小资女的博客 1997

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

干掉shape,手动构建GradientDrwable

日常开发中,实现比如TextView、Button等组件的圆角、渐变、边框一般都是定义个xml文件,然后使用shape实现,比如:<?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" andr...

Android技术之家 369

GradientDrawable 获取单一颜色

概述 GradientDrawable 虽然功能很强大,在平时的使用中,有很多场景只会使用其形状相关的功能,比如用来画一个圆形或者画一个圆角矩形,一般代码会如下: View vTest = findViewById(R.id.v_main_test); GradientDrawable gradientDrawable = new GradientDrawable(); gradientDrawable.setColor(0xFFFF0000);

许佳佳的博客 2138

StateListDrawable cannot be cast to android.graphics.drawable.BitmapDrawable

报这个错误是在我的自定义imageview里面产生的,由于自己用了picasso框架,最先还以为是picasso的图片加载到我的控件中格式错误,最后发现我在填充自定义imageview的时候,错误和默认图片都是xml格式的图片,StateListDrawable就是这个格式的图片,而在我的ondraw函数里面我是直接getdraw得到图片的,如果服务器不存在图片的话,默认的xmL文件就会填充图片,

u012345683的博客 6797

Android 动态修改渐变 GradientDrawable

1GradientDrawable 简介 渐变实现 前面的文章 讲解了如何实现渐变类似LinearGradient,SweepGradient是用于Paint的setShader的,可以通过定义xml的shape,内部利用gradient标签,将shape作为view的背景快速实现渐变。但当我们需要动态修改时,就需要用到GradientDrawable,它和xml方式对应,可以快速生成可以作为vi...

lidongxiu0714 1万+

GradientDrawable cannot be cast to android.graphics.drawable.BitmapDrawable

Caused by: java.lang.ClassCastException: android.graphics.drawable.GradientDrawable cannot be cast to android.graphics.drawable.BitmapDrawable 出错代码: mThumbBitmap =((BitmapDrawable)getResources()....

pang9998的博客 3277

GradientDrawable代替Drawable 和 StateListDrawable代替selector工具类

工具类代码: public class DrawUtils { //GradientDrawable代替Drawable public static Drawable getDrawable(int rgb, float radius) { GradientDrawable gradientDrawable = new GradientDrawable();

奋斗&努力 629

java.lang.ClassCastException 在 android 当尝试获取应用程序的图标

Caused by: java.lang.ClassCastException: android.graphics.drawable.NinePatchDrawable cannot be cast to android.graphics.drawable.BitmapDrawable 图标是没有实例的 BitmapDrawable,一个可以检查像这样: Bitmap

Kitty_Landon的专栏 3875

GradientDrawable修改颜色的正确使用方式

在Android开发过程中,难免要动态修改Drawable或Shape的形状或者颜色,通常我们都是转换成GradientDrawable对形状、颜色、渐变、角度等进行修改。但是偶尔你会发现,你所修改的shape资源的颜色会影响后续页面对应资源的的显示,无论是通过xml读取还是通过代码读取,图片的颜色都变了,这肯定不是我们想要的,那怎么办呢?别急... GradientDrawable.set...

3556

Caused by: java.lang.ClassCastException: android.graphics.drawable.VectorDrawable cannot be cast to

在自定义控件的时候,自定义了属性报以下错误   Process: com.example.attr, PID: 4301     java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.attr/com.example.attr.MainActivity}: android.view.Infla...

一抹离愁 4925

Android 动态设置Shape

引言:之前涉及到设置view背景的地方几乎都是通过写<shape>标签的方式实现的。慢慢的,项目里的xml越来越多,命名都成问题了!于是就想用动态设置shape的方式来替换静态配置shape标签。静态配置shape这个不多说了,梯子备好了,自行前往! https://developer.android.google.cn/guide/topics/resources/drawable-resour

JM_beizi的专栏 4057
上一篇: 进程保活MarsMaedmon
下一篇: 深入理解 Flutter 的编译原理与优化 (目录)
VIPqiangqiang
博客等级 码龄14年 7粉丝 83原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值