如何以编程方式圆角并设置随机背景颜色

2023-12-28

我想圆化视图的角,并根据运行时的内容更改视图的颜色。

TextView v = new TextView(context);
v.setText(tagsList.get(i));
if(i%2 == 0){
    v.setBackgroundColor(Color.RED);
}else{
    v.setBackgroundColor(Color.BLUE);
}

v.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
v.setPadding(twoDP, twoDP, twoDP, twoDP);               
v.setBackgroundResource(R.drawable.tags_rounded_corners);

我希望设置可绘制对象和颜色会重叠,但它们不会重叠。无论我第二次执行哪一个都是结果背景。

有没有什么方法可以以编程方式创建此视图,请记住背景颜色要到运行时才会决定?

编辑:我现在只是在红色和蓝色之间交换以进行测试。稍后颜色将由用户选择。

edit:

Tags_rounded_corners.xml:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
    <corners 
         android:bottomRightRadius="2dp" 
         android:bottomLeftRadius="2dp" 
         android:topLeftRadius="2dp" 
         android:topRightRadius="2dp"/>
</shape>

代替setBackgroundColor,检索背景可绘制对象并设置其颜色:

v.setBackgroundResource(R.drawable.tags_rounded_corners);

GradientDrawable drawable = (GradientDrawable) v.getBackground();
if (i % 2 == 0) {
  drawable.setColor(Color.RED);
} else {
  drawable.setColor(Color.BLUE);
}

此外,您还可以在内部定义填充tags_rounded_corners.xml:

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
  <corners android:radius="4dp" />
  <padding
    android:top="2dp"
    android:left="2dp"
    android:bottom="2dp"
    android:right="2dp" />
</shape> 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何以编程方式圆角并设置随机背景颜色 的相关文章

  • 未找到 Gradle DSL 方法:“versionCode()”

    构建我的 Android 项目时遇到问题 我使用Grgit https github com ajoberstar grgit填写versionCode and versionName在 gradle 中 一切工作正常 直到我将 Andro
  • 合并两个位图图像(并排)

    任何人都可以帮助将两个位图图像合并为单个位图 在android中 并排 谢谢 尤瓦拉吉 您可以使用Canvas 查看这篇文章 http www jondev net articles Combining 2 Images in Androi
  • ImageView 中的全尺寸图像

    我正在尝试在 ImageView 中绘制图像 但我希望它不缩放 并根据需要使用滚动条 我怎样才能做到这一点 现在我只有一个可绘制集作为 XML 中 ImageView 的 android src 这会自动缩放图像以适应屏幕宽度 我读到这可能
  • 为什么 Kotlin 数据类可以在 Gson 的不可空字段中包含空值?

    在 Kotlin 中你可以创建一个data class data class CountriesResponse val count Int val countries List
  • Android studio 在日志猫中“清除全部”,更改日志级别过滤器时日志仍然会回来

    在 LogCat 中 当我单击 全部清除 按钮时 它似乎清除了所有日志 但是 如果我更改日志级别并返回到之前的日志级别 则所有日志都会返回 例如 我正在查看 Verbose 我选择 全部清除 日志清除 我切换到 调试 我切换回 详细 现在所
  • 更改 AChartEngine 中的图例大小

    我想专门更改饼图的图例大小输出 我已经尝试了所有可以找到的 AChartEngine 方法 但没有一个只能更改图例文本大小 我必须重写 onDraw 函数吗 如果是这样 怎么办 要设置图例高度 请使用 renderer setLegendH
  • OpenCV InRange 参数

    我在 Android 上使用 OpenCV 来实时查找特定颜色的圆圈 我的第一步是仅保留与我正在寻找的定义颜色相对应的像素 在本例中为红色或绿色 示例图像 https i stack imgur com CIozU jpg 为此 我正在使用
  • layout.xml 的用途是什么?

    人们为什么使用layout xml在他们的resources like
  • 下载图像并显示它

    应用程序的主要目的是下载和显示图像 但是当我尝试启动应用程序时它崩溃了 这是我的代码 private DownloadImageTask task protected void onCreate Bundle savedInstanceSt
  • invalidateOptionsMenu 在片段中不起作用

    显示或隐藏项目ActionBar根据文本中是否有文本EditText or not 所以 我做了以下事情 public class NounSearch extends android app Fragment EditText seach
  • 当参数具有默认值时,为什么无法使用导航组件将参数传递给片段?

    我正在使用导航组件 但我不明白为什么如果定义了参数 则将参数传递给下面的方法时会出现错误 我正在使用 SafeArgs 只有当我为此参数定义默认值时才会出现此错误 有人可以解释一下为什么会发生这种情况以及如何解决它吗 这是导航图的部分代码
  • 版本 5 上带有 getBackground().setAlpha 的按钮 - 棒棒糖无法正常工作

    我有这段代码 适用于自 API 14 以来的每个版本 但在 Android 5 0 Lollipop 上无法正常工作 以下是我希望按钮出现的方式 单击按钮1 buttonArrivals getBackground setAlpha 180
  • 如何从SurfaceView绘制到Canvas?

    我正在尝试做简单的画家 问题是Android看起来有三个独立的Canvas并给我它来顺序绘制 我用以下方式制作了用户界面SurfaceView 把霍尔德从中拿走 Override protected void onCreate Bundle
  • onTouchEvent()中如何区分移动和点击?

    在我的应用程序中 我需要处理移动和单击事件 一次点击是由一个 ACTION DOWN 操作 多个 ACTION MOVE 操作和一个 ACTION UP 操作组成的序列 理论上 如果您收到 ACTION DOWN 事件 然后收到 ACTIO
  • 如何在android中录制音频时暂停背景音乐

    我正在 Android 中开发一个音频记录应用程序 因此 如果设备音乐播放器中已播放任何背景音乐 则应在开始录制之前暂停该背景音乐 并且每当录制停止或暂停时 背景音乐都应恢复 播放录制的音频时也应该如此 有人可以帮我解决这个问题吗 提前致谢
  • 如何在 WebView 中添加 JavaScript 函数并稍后在提交 reCAPTCHA 时从 HTML 调用它

    我在 WebView 中添加一个 JavaScript 函数 如下所示 Kotlin val webView findViewById R id webview as WebView webView getSettings setJavaS
  • Android:单一活动,多个视图

    我不是 Android 专业人士 尽管我开发了一个包含 50 多个活动的应用程序 这使得该应用程序非常庞大 经过8周的开发 现在出现了一些问题 导致应用程序难以维护和升级 我正在处理的主要问题是 我无法将对象引用传递给活动的构造函数 事实上
  • Android:如何通过右侧的十字按钮清除EditText

    我创建了一个EditText用于搜索 左侧包含搜索图标 右侧包含图标
  • Jetpack Compose 部分或开放侧边框

    我正在尝试绘制部分或一侧开放的矩形圆形边框以实现此效果 玩了一下之后我得到了这个 这是通过以下方式完成的 RoundedCornerShape topStartPercent 50 bottomStartPercent 50 start R
  • Android应用程序kill事件捕获

    我想在我的应用程序被终止时执行一些操作 可以使用哪种方法来实现此目的 我正在开发 Android 5 0 这个问题的关键在于 您必须了解您的申请是否可以收到任何 当您的应用程序在任何情况下被终止时的额外回调 下面的答案是由德文连线 http

随机推荐

  • Android 中的 Z 索引?

    我在一个 xml 中有多个元素 listview slidingdrawer edittext 和 button 我想滑动抽屉顺序始终位于另一个元素的前面 但我不能 这是我的 xml
  • 与复合组件一起使用时出现重复 ID 异常

    有条件地使用复合组件时 出现重复 ID 异常
  • SwingUtilities.invokeLater()

    我如何感受到 SwingUtilities invokeLater 在任何 swing 应用程序中的重要性 请给出一些代码示例 每当你需要更新 GUI 中的某些内容时 你应该通过AWT 事件线程 这是因为 AWT 以及顶部的 Swing 有
  • 在使用 XP 模式的 Windows 7 上构建 Visual Studio 2010 Silverlight 4 项目时出错

    我在 Windows 7 上的 XP 模式 VM 中安装了 Visual Studio 2010 Beta 2 然后我创建了一个简单的 Silverlight 4 测试版 项目并尝试构建它 我收到以下错误 错误 1 ValidateXaml
  • Spring Security,JUnit:@WithUserDetails 用于在 @Before 中创建的用户

    在使用 Spring MockMVC 的 JUnit 测试中 有两种方法用于验证 Spring Security 用户的身份 WithMockUser使用提供的凭据创建一个虚拟用户 WithUserDetails获取用户名并将其解析为正确的
  • Spark Streaming Kafka 流

    我在尝试使用 Spark Streaming 读取 kafka 时遇到一些问题 我的代码是 val sparkConf new SparkConf setMaster local 2 setAppName KafkaIngestor val
  • 使用python正则表达式来匹配时间

    我正在尝试解析一个 csv 文件 其时间格式为下午 6 30 或上午 7 点或午夜 我已经用谷歌搜索并阅读了 python 文档中的正则表达式文档 但未能成功实现它们 我第一次尝试匹配它们是 re findall r d 1 2 d 1 2
  • 带过滤器的 Web Api $extend IQueryable

    我有一个设置 我获得了一个 WebApi OData 服务 该服务返回 客户 返回客户的代码是 public IHttpActionResult GetCustomers ODataQueryOptions
  • Java 8 流中聚合运行时异常

    假设我有一个抛出运行时异常的方法 我正在使用一个Stream对列表中的项目调用此方法 class ABC public void doStuff MyObject myObj if throw new IllegalStateExcepti
  • 如何在kivy+python中从数据库获取数据并显示在表格中

    list py import kivy kivy require 1 9 0 replace with your current kivy version import sqlite3 as lite from kivy uix scree
  • PHP foreach 更改原始数组值[重复]

    这个问题在这里已经有答案了 我对多维数组非常陌生 这让我很烦恼 我的数组如下 fields array names gt array type gt text class gt name name gt name text before g
  • JavaScript 倒计时和重定向

    我有一个 javascript 脚本 它运行倒计时 然后重定向到另一个链接 由于我现在所有网站都使用静态域运行相同的代码 因此我想知道是否可以编辑脚本以使其根据其周围的 span 标签重定向到不同的链接 我还删除了这段代码 所以如果有人有更
  • 在外部存储器/SD卡上缓存图像的推荐路径

    当我在 Android 文件传输或 Astro 文件管理器中查看 SD 卡根目录时 发现很混乱 因为应用程序到处都存储着文件 作为开发人员 我们通过缓存图像 文件等来遵循最佳实践 以使我们的应用程序更快 并且我们使用Environment
  • 如何仅向测试人员发布新版本的 Chrome 扩展程序

    我有一个有很多用户的 Chrome 扩展程序 我想更新它 我已准备好一切 但我需要测试更新以确保当前用户不会丢失数据 有没有办法只将新版本发布给受信任的测试人员 我创建了一个测试组 我插入受信任的测试人员电子邮件帐户 我已在测试帐户下登录
  • 架构和数据字典有什么区别?

    模式的定义是数据库中数据的逻辑结构 它由用户拥有并与数据库用户同名 模式包含表的名称 它的列类型是什么等 数据字典也仅包含元数据 当然它是在数据库级别而不是用户级别 模式和数据字典之间的确切区别是什么 这些定义来自我的经验 20 多年的程序
  • VBS代码中的With语句,在PowerShell中如何表达

    有没有可以快速将VBS代码转换为PowerShell代码的软件或工具 另外 我想知道的是 以下WithVBS代码中的语句 在PowerShell中如何表达 The With语句很棒 可以缩短代码 我可以在PowerShell中实现类似的功能
  • 错误:未授予权限...react-native-image-picker

    我正在尝试使用客户端应用程序中的内存上传图像 反应本机图像选择器 0 26 4 执行以下示例片段后 我以意想不到的方式得到了响应 ImagePicker showImagePicker options response gt console
  • WPF 应用程序基于角色的访问控制 - 最佳实践

    我需要实施某种RBAC http en wikipedia org wiki Rbac对于我目前正在编写的 WPF 应用程序 自 v2 0 起 ASP NET 就拥有了安全性 成员身份和角色管理基础架构 如所述here http weblo
  • jaxws-api 2.2 未在 Maven 构建中加载

    我已经使用 Apache CXF 工具 wsdl2java 生成了 Java 代码 在我的服务评论中 它说我应该支持 Jaxws API 2 2 但不知道这意味着什么 在我的 Maven POM 中我有这个
  • 如何以编程方式圆角并设置随机背景颜色

    我想圆化视图的角 并根据运行时的内容更改视图的颜色 TextView v new TextView context v setText tagsList get i if i 2 0 v setBackgroundColor Color R