Android 将 Drawable 和 Shape 合并为一个 Drawable(以编程方式)

2024-01-28

我正在设置android:drawable单选按钮的编程方式如下:

Drawable unchecked = getResources().getDrawable(R.drawable.ic_room_car);

Drawable d= getResources().getDrawable(R.drawable.ic_room_car);

Shape circle = ?????;
??? checked = combine circle and d


SateListDrawable states= new StateListDrawable();
states.addState(new int[] {android.R.attr.state_checked}, checked);
states.addState(new int[] {}, unchecked);

((RadioButton)findViewById(R.id.icon_1)).setButtonDrawable(states);

基本上它有一个自定义图标,当它未选中时我会从资源中读取它,当选中时我想在图标后面画一个圆圈。

未检查的行为在第二个 addState 行中设置,并且它正在工作。我的问题是如何以编程方式绘制一个圆圈,然后以某种方式将其与我从资源中读取的可绘制对象结合起来。


这是一个图层列表。

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@mipmap/ic_launcher" android:left="10dp" android:right="10dp" android:top="10dp" android:bottom="10dp">
    </item>
    <item>
       <shape android:shape="oval">
            <solid android:color="@android:color/transparent"></solid>
            <stroke android:color="#4b14b1" android:width="1dp"></stroke>
            <size android:height="50dp" android:width="50dp"></size>
        </shape>
    </item>
</layer-list>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android 将 Drawable 和 Shape 合并为一个 Drawable(以编程方式) 的相关文章

  • 如何对这个字符串进行子串化

    我想得到这个字符串的 4 个部分 String string 10 trillion 896 billion 45 million 56873 我需要的4个部分是 10万亿 8960亿 4500万 和 56873 我所做的是删除所有空格 然
  • 类型容器“Android 依赖项”引用不存在的库 android-support-v7-appcompat/bin/android-support-v7-appcompat.jar

    我在尝试在我的项目中使用 Action Bar Compat 支持库时遇到了某种错误 我不知道出了什么问题 因为我已按照此链接中的说明进行操作 gt http developer android com tools support libr
  • Android - 从资产中解析巨大(超大)JSON 文件的最佳方法

    我正在尝试从资产文件夹中解析一些巨大的 JSON 文件 我如何加载并添加到 RecyclerView 我想知道解析这种大文件 大约 6MB 的最佳方法是什么 以及您是否知道可以帮助我处理此文件的良好 API 我建议您使用GSON lib h
  • java.lang.NoClassDefFoundError:org.apache.batik.dom.svg.SVGDOMImplementation

    我在链接到我的 Android LibGDX 项目的 Apache Batik 库时遇到了奇怪的问题 但让我们从头开始 在 IntelliJ Idea 中我有一个项目 其中包含三个模块 Main Android 和 Desktop 我强调的
  • Adobe 是否为其 PDF 阅读器提供 Android SDK 或 API? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我希望能够在我们的应用程序内的视图中显示本地 PDF 文件 在 Android 4 03 下的平板电脑上运行 目前 我们将 Adob eR
  • 在画布上绘图

    我正在编写一个 Android 应用程序 它可以在视图的 onDraw 事件上直接绘制到画布上 我正在绘制一些涉及单独绘制每个像素的东西 为此我使用类似的东西 for int x 0 x lt xMax x for int y 0 y lt
  • 使用 Android 发送 HTTP Post 请求

    我一直在尝试从 SO 和其他网站上的大量示例中学习 但我无法弄清楚为什么我编写的示例不起作用 我正在构建一个小型概念验证应用程序 它可以识别语音并将其 文本 作为 POST 请求发送到 node js 服务器 我已确认语音识别有效 并且服务
  • 控制Android的前置LED灯

    我试图在用户按下某个按钮时在前面的 LED 上实现 1 秒红色闪烁 但我很难找到有关如何访问和使用前置 LED 的文档 教程甚至代码示例 我的意思是位于 自拍 相机和触摸屏附近的 LED 我已经看到了使用手电筒和相机类 已弃用 的示例 但我
  • JavaMail 只获取新邮件

    我想知道是否有一种方法可以在javamail中只获取新消息 例如 在初始加载时 获取收件箱中的所有消息并存储它们 然后 每当应用程序再次加载时 仅获取新消息 而不是再次重新加载它们 javamail 可以做到这一点吗 它是如何工作的 一些背
  • 在 SQLite 中搜索时排除 HTML 标签和一些 UNICODE 字符

    更新 4 我已经成功运行了firstchar例如 但现在的问题是使用regex 即使包含头文件 它也无法识别regex操作员 有什么线索可以解决这个问题吗 更新 2 我已经编译了sqlite3我的项目中的库 我现在正在寻找任何人帮助我为我的
  • 如何默认在 ActionOpenDocument 意图中显示“内部存储”选项

    我需要用户选择一个自定义文件类型的文件 并将其从 Windows 文件资源管理器拖到 Android 设备上 但默认情况下内部存储选项不可用 当我使用以下命令启动意图时 var libraryIntent new Intent Intent
  • 字符串数组文本格式化

    我有这个字符串 String text Address 1 Street nr 45 Address 2 Street nr 67 Address 3 Street nr 56 n Phone number 000000000 稍后将被使用
  • 我的设备突然没有显示在“Android 设备选择器”中

    我正在使用我的三星 Galaxy3 设备来测试过去两个月的应用程序 它运行良好 但从今天早上开始 当我将设备连接到系统时 它突然没有显示在 Android 设备选择器 窗口中 我检查过 USB 调试模式仅在我的设备中处于选中状态 谁能猜出问
  • Android 中麦克风的后台访问

    是否可以通过 Android 手机上的后台应用程序 服务 持续监控麦克风 我想做的一些想法 不断聆听背景中的声音信号 收到 有趣的 音频信号后 执行一些网络操作 如果前台应用程序需要的话 后台应用程序必须能够智能地放弃对麦克风的访问 除非可
  • 增加活动的屏幕亮度

    显然 Android 操作系统中至少有三种不同的技术可以改变屏幕亮度 其中两个在纸杯蛋糕之后不再起作用 而第三个被接受的技术显然有一个错误 我想在单视图活动开始时增加屏幕亮度 然后在活动结束时将亮度恢复为用户设置 没有按钮 没有第二个视图或
  • 在activity_main.xml中注释

    我是安卓新手 据我所知 XML 中的注释与 HTML 中的注释相同 使用 形式 我想在 Android 项目的 Activity main xml 配置文件中写一些注释 但它给了我错误 值得注意的是 我使用的是 Eclipse 但目前 我直
  • 如何确定对手机号码的呼叫是本地呼叫还是 STD 或 ISD

    我正在为 Android 开发某种应用程序 但不知道如何获取被叫号码是本地或 STD 的号码的数据 即手机号码检查器等应用程序从哪里获取数据 注意 我说的是手机号码 而不是固定电话 固定电话号码 你得到的数字是字符串类型 因此 您可以获取号
  • 捕获的图像分辨率太大

    我在做什么 我允许用户捕获图像 将其存储到 SD 卡中并上传到服务器 但捕获图像的分辨率为宽度 4608 像素和高度 2592 像素 现在我想要什么 如何在不影响质量的情况下获得小分辨率图像 例如我可以获取或设置捕获的图像分辨率为原始图像分
  • 按日期对 RecyclerView 进行排序

    我正在尝试按日期对 RecyclerView 进行排序 但我尝试了太多的事情 我不知道现在该尝试什么 问题就出在这条线上适配器 notifyDataSetChanged 因为如果我不放 不会显示错误 但也不会更新 recyclerview
  • 节拍匹配算法

    我最近开始尝试创建一个移动应用程序 iOS Android 它将自动击败比赛 http en wikipedia org wiki Beatmatching http en wikipedia org wiki Beatmatching 两

随机推荐

  • 使用 NPOI 将图像插入 Excel 文件

    我正在使用 C 在 Visual Studio 2010 中编写一个程序 并且正在使用 NPOI 库 我正在尝试将图像插入到 Excel 文件中 我尝试了两种不同的方法 但都不起作用 Method 1 HSSFPatriarch patri
  • 服务重启后 Docker 节点宕机

    我的服务器似乎空间不足 并且某些已部署的 Docker 堆栈出现了一些问题 我花了一段时间才弄清楚 但最终我做到了 并删除了一些容器和图像以释放一些空间 我能够跑service docker restart它起作用了 然而 也存在一些问题
  • 通过java应用程序发送附有excel文件的电子邮件 - 不起作用

    我试图通过Java应用程序发送一封邮件 其中包含excel文件作为附件 而不实际创建该文件 excel文件中的数据来自数据库 我可以发送带有附件的邮件 但文件是文本 制表符分隔 格式 但我希望该文件仅为 Excel 格式 请帮忙 以下是代码
  • 在 Java 调试器中,如何忽略从未通过我的代码的异常

    我目前正在使用 IntelliJ IDEA 进行 Java 开发 但我也对针对其他 IDE 的答案或调试 Java 代码的一般概念感兴趣 因为我在许多 IDE 中都错过了这个功能 所以我不确定在从其他语言转移我的调试习惯时是否错过了工作流程
  • Google Dataflow(Apache Beam)JdbcIO批量插入mysql数据库

    我正在使用 Dataflow SDK 2 X Java API Apache Beam SDK 将数据写入 mysql 我创建了基于管道Apache Beam SDK 文档 https beam apache org documentati
  • 使用 window.open() 的多个窗口

    众所周知 如果您单击嵌入其中的提交按钮onClick windown open 这将打开一个新窗口 其中包含您指定的所有可爱属性 但是 如果继续单击父窗口并再次单击 提交 按钮而不关闭先前的弹出窗口 则同一窗口将被新数据覆盖 现在我需要一种
  • 词汇量和嵌入维度之间的首选比例是多少?

    例如使用时gensim word2vec或用于训练嵌入向量的类似方法我想知道什么是好的比率 或者嵌入维度与词汇量之间是否有首选比率 随着更多数据的出现 这种情况会如何变化 由于我仍在讨论这个主题 因此在训练嵌入向量时如何选择合适的窗口大小
  • 哪些 OpenGL ES 2.0 纹理格式可进行颜色、深度或模板渲染?

    From OpenGL ES 2 0 规范 http www khronos org registry gles specs 2 0 es full spec 2 0 25 pdf第 4 4 5 节 表 4 5 中未列出的格式 包括压缩的内
  • 如何将两个日期列表合并为一系列日期间隔?

    我有开始日期列表和结束日期列表 他们已经排序了 start dates datetime date 2009 11 5 datetime date 2009 11 13 datetime date 2009 11 25 datetime d
  • 实体框架:如何在提交之前检查值是否存在

    我正在使用存储库模式 我有一个国家 地区存储库 我正在使用服务来提交该存储库 我应该在哪里检查该国家 地区是否已存在于数据库中 我会抛出异常吗 有没有一种方法可以在一次数据库调用中做到这一点 如果不存在则检查并插入 如果可以的话 可以在服务
  • 使用区域设置来检测是否使用英制单位

    我正在开发一个应用程序 想要以厘米 cm 或英寸 为单位显示长度 有没有办法从区域设置中选择正确的单位 无论如何 我还将输入一个选项 以便用户可以覆盖区域设置 美国 利比里亚和缅甸应使用英制单位 而世界其他国家应使用正常单位 一种方法是将此
  • 将 CSV 转换为 RDF,其中一列是一组值

    我想将 CSV 转换为 RDF 事实上 该 CSV 的一列是一组用分隔符 在我的例子中为空格符 连接的值 以下是 CSV 示例 带标题 col1 col2 col3 A B C D John M X Y Z Jack 我希望转换过程创建一个
  • 使用T4模板基于POCO生成多个类

    当我向数据库添加表时 我正在寻找一种提高工作效率的方法 一般来说 当我添加新表时 我必须执行以下步骤 将表添加到数据库 简单 创建相应的 EF Code First 类 我不使用数据库迁移 创建一个与 2 中创建的 EF 类匹配的 POCO
  • 需要帮助了解 Firebase Storage CDN

    我正在构建一个有声读物应用程序 并将音频文件上传到 Firebase 存储上 我的问题是我在旧金山和多伦多经历了不同的表现 我的印象是 Firebase Storage 具有内置 CDN 如果是这样 我需要在某处启用它吗 如果没有 如何将
  • Breeze:EFContextProvider/Breeze 控制器和服务层

    使用 Breeze 时 我想知道如何将其与处理电子邮件通知 审核日志 业务验证 即客户必须存在 等事务的服务层集成 例如 假设有以下场景 public class SalesAppRepository private readonly EF
  • 单个 APN 是一个组织中多个应用程序的关键

    我的组织维护多个应用程序 并且对于如何使用 APN 密钥存在困惑 我们正在使用 firebase 发送推送通知 So far we have two apple keys for two different applications But
  • 到 .accdb 文件的 ODBC 连接

    我正在尝试从我一直在处理的统一项目中访问 Microsoft Access 数据库文件 但它不断抛出异常 因为它无法找到该文件并且没有选择标准河流 代码 using UnityEngine using UnityEngine UI usin
  • DynamoDB 预配的写入容量单位经常意外超出

    我相信我了解写入 读取容量单位 它们的工作原理以及在 DynamoDB 中的计算方式 证明就是我明白this https linuxacademy com howtoguides posts show topic 20310 how to
  • 从 Clojure Repl 和 Leiningen 运行测试

    作为 clojure 的新手 我使用 leiningen 创建了一个示例项目 lein new app first project 这给了我这个目录 doc intro md LICENSE project clj README md re
  • Android 将 Drawable 和 Shape 合并为一个 Drawable(以编程方式)

    我正在设置android drawable单选按钮的编程方式如下 Drawable unchecked getResources getDrawable R drawable ic room car Drawable d getResour