首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Jetpack Compose中添加AlertDialog时出现"Can't find ColorStateList from drawable resource ID“

在Jetpack Compose中添加AlertDialog时出现"Can't find ColorStateList from drawable resource ID"的错误是由于尝试从可绘制资源ID中找不到ColorStateList引起的。这个错误通常发生在尝试设置AlertDialog的背景颜色时。

要解决这个问题,可以尝试以下几个步骤:

  1. 确保你的可绘制资源ID是正确的:首先,检查你在设置AlertDialog背景时使用的可绘制资源ID是否正确。确保资源ID指向一个有效的可绘制资源。
  2. 使用正确的资源类型:在Jetpack Compose中,使用colorResource()函数来引用颜色资源,而不是使用drawableResource()函数。如果你使用了drawableResource()函数来引用颜色资源,就会出现上述错误。确保你使用了正确的资源类型。
  3. 检查资源文件:检查你的资源文件中是否包含了正确的颜色资源。确保你在资源文件中定义了正确的颜色资源,并且资源ID与你在代码中引用的资源ID一致。
  4. 更新Compose版本:如果你使用的是较旧的Jetpack Compose版本,尝试更新到最新版本。有时候,这个问题可能是由于Compose库中的bug引起的,更新到最新版本可能会修复这个问题。

总结起来,当在Jetpack Compose中添加AlertDialog时出现"Can't find ColorStateList from drawable resource ID"的错误时,你可以检查可绘制资源ID的正确性,使用正确的资源类型,检查资源文件中的颜色资源,并尝试更新Compose版本来解决这个问题。

关于Jetpack Compose和相关概念的更多信息,你可以参考腾讯云的Jetpack Compose产品介绍页面:Jetpack Compose产品介绍

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

C#-Xamarin的Android项目开发(一)——创建项目

Resources文件夹里,我们可以发现,没有存储图片的地方,那么,我们创建一个文件夹drawable用来存储图片。 为什么用drawable存图片?...可以看到我们设置内容视图的时候,去资源里找了一个页面;也就是说,Android,视图是倒装的,现有Activity然后由Activity来控制要导入那个页面视图显示。...如果id不同,则每click,statu那里增加一个提示 manager.Notify(1, notify1); } public static...int GetCode(string name) { var R = this.Resources; var code = (typeof(Resource.Id...模拟器配置好以后,调试启动的选项,就会增加这个模拟器的选项,如下图: ? 接下来就很简单了,只要直接点击运行就可以了。 运行结果如下图: ?

2.9K10

求知 | Android资源加载的那些事 - 小试牛刀

Resource Android ,指的是我们开发中使用到的资源,例如 drawable、String、anim、color 等。...其会在开发阶段生成相应的R类以及对应的 资源ID ,以便开发者使用时通过传递 资源Id ,从而获取相应类型的资源文件。...具体伪代码如下图: 处理构建的drawable 主题与参数 ; 如果当前drawable 没有缓存 ,则将添加到缓存。...当加载完成后,如果此时正在预加载,将其添加到预加载数组,否则将其添加到缓存里。...() 获取颜色资源,如果该资源缓存存在,则直接取出并返回新的实例,否则根据当前要加载的类型,如果是 “#xxx” ,则直接初始化并添加到缓存,否则判断 TypedValue 中保存的资源信息 后缀

53820

【建议收藏】Jetpack Compose编程知识全汇总 (含详细实例讲解)

伴随React Native、Flutter等大前端框架的兴起以及Jetpack Compose、SwiftUI等native框架的出现,声明式UI正逐渐成为客户端UI开发的新趋势。...`widthDp: Int`: Compose渲染的最大宽度,单位为dp。 8. `heightDp: Int`: Compose渲染的最大高度,单位为dp。...setContent的方法也是有@Compose注解的方法。所以,setContent写入关于UI的@Compopse方法,即可在Activity显示。...Compose 如果想使用Compose的情况下,又不想迁移整个应用,可以xml里面增加ComposeView,类似于占位符,然后Actviity/fragment寻找该控件并调用setContent...用Jetpack Compose写一个玩安卓App 准备工作 引入依赖 新建 Activity 创建 Compose PlayTheme 画页面 底部导航栏 管理状态 添加页面 [1240] 5.

6.2K60

Android:RippleDrawable 水波纹涟漪效果

二、RippleDrawable基本概念介绍 (1)、RippleDrawable RippleDrawable可以实现上面效果图中的水波纹效果,它是API 21 添加的,所以,低于21的版本不可使用...A single layer may be set as the mask from XML by specifying its android:id value as R.id.mask....其中id 为 mask 的item 初始化界面不会直接绘制出来,而是发生触摸之后才会绘制。 mask 直译过来有遮罩的意思,它会限定水波纹的范围。...如果我们需要将 ripple 的某个item设置为 mask , xml ,直接为该item设置id属性即可—— android:id="@android:id/mask" ; Java代码如果想替换现有的...--以此作为 backGround,控件初始使用 item 作为bg ; 按压时会有一个色值渐变效果,按住不松时会显示 ripple 和 item 颜色的混合值; 松手的瞬间会显示 ripple

2.5K20

求知 | Android资源加载的那些事-小试牛刀

Resource Android ,指的是我们开发中使用到的资源,例如 drawable、String、anim、color 等。...其会在开发阶段生成相应的R类以及对应的 资源ID ,以便开发者使用时通过传递 资源Id ,从而获取相应类型的资源文件。...主题与参数 ; 如果当前drawable 没有缓存 ,则将添加到缓存。...当加载完成后,如果此时正在预加载,将其添加到预加载数组,否则将其添加到缓存里。...() 获取颜色资源,如果该资源缓存存在,则直接取出并返回新的实例,否则根据当前要加载的类型,如果是 “#xxx” ,则直接初始化并添加到缓存,否则判断 TypedValue 中保存的资源信息 后缀

56750

Android老司机搬砖小技巧

createImageThumbnail(),createVideoThumbnail() android.database.DatabaseUtils 数据库操作相关工具类 常见的坑 以下经验是AC开车出现事故的小笔记...Handler处理异步操作 用isFinishing()判断当前的Activity是否存在: 比如在联网请求数据回调回来之后,Handler的handleMessage()方法,用 isFinishing...如果页面的的样式如果出现了很奇怪的渲染(花屏,闪烁等异常),看看所在的Activity或者View是否添加了硬件加速。...startActivity的时候闪退并出现了以下log: java.lang.SecurityException: Unable to find app for caller android.app.ApplicationThreadProxy...drawable 的selector文件 如果使用android:exitFadeDuration="@android:integer/config_shortAnimTime"这个属性,那么不同的手机可能会有不同的效果

98610

来聊聊 Jetpack Compose 动画,一篇搞定(上篇)

引言 Jetpack Compose 作为 Google 近期主推的 Android 开发 UI 框架,得益于其声明式编程的思想以及协程的加持,让 Compose 开发过程中非常的舒适。...知识储备: 我希望你阅读本文前对 Kotlin 协程、Jetpack Compose 基础都有一定的了解~ 一、我为什么喜欢用 Compose 写动画?...比如一个动画的出现和消失,我们可以通过 Compose 提供的 AnimatedVisibility 来实现。甚至再加一两行代码,控制出场和退场的方式。...(关于Transition类后面会详细介绍) 使用 AnimatedVisibilityScope 的 transition 来添加自定义动画效果: 例子:红心出现和消失的同时,我们需要同时改变红心的颜色...内子项的进出动画,可以使用 Modifier.animateEnterExit 来重新定制动画; 出现和消失动画对应的是 Native 的 Visible 和 Gone 状态,视图消失的时候会带来布局容器的改变

1K00

划重点 | Android Jetpack 三大重要更新!

正式发布 Jetpack 两年后的今天,我们已经看到大量的应用开发开始采用 Jetpack 的开发库,这其中既包括大型开发团队的产品,也有那些刚起步的应用。...这个 API 可以让开发者监控WorkManager 的内部状态,并且 logcat 打印出该状态的具体信息: Recently completed work: Id Class Name Job...Compose — 全新的 Android UI 开发框架 Jetpack Compose 是全新的现代 Android UI 开发框架,目前发布了开发者预览第二版。...Jetpack Compose https://developer.android.google.cn/jetpack/compose 更多关于所有更新内容,请观看下方视频 What’s new in...为了帮助开发者,我们重新设计了 Jetpack 网站,并且大量更新之余新增了一个便捷的 API 选取器,可以帮助开发者更快捷的找到 Jetpack 合适的开发库来解决问题。

1.6K40

Android 天气APP(二十六)增加自动更新(检查版本、通知栏下载、自动安装)

然后打开ApiService,新增接口方法,因为里面的id和api token是固定的所以我就不用动态传递过去了,直接写死url里面,当然如果你要写的话记得要用自己的id和api token,用我的你是那不到返回数据的...= "locationId";//通过搜索接口得到的城市id,V7所有数据通过id来查询 public final static String EVERYDAY_IMG = "everyday_img...首先增加样式文件,mvplibrary下面的styles.xml ? <!...如下: anim下创建 dialog_from_bottom_anim_in.xml <?xml version="1.0" encoding="utf-8"?...MainActivity private AlertDialog updateAppDialog = null;//应用更新提示弹窗 /** * 应用更新提示弹窗 * @param

1.3K20

Android | Compose 初上手

Compose 构建界面的时候,无需像之前那么构建 XML 布局,只需要调用 Jetpack Compose 函数来声明你想要的的元素,Compose 编译器就会自动帮你完成后面的工作。...开始使用 Compose 之前,你需要重新搭建环境,可参考**官方文档** 注解 @Compose 所有的组合函数都必须添加 @Compose 注解才可以。...组合函数 Jetpack Compose 是围绕可组合函数构建的,这些函数就是要显示界面上的元素,函数只需要描述应用界面形状和数据依赖关系,而不用去关系界面的构建过程, 如果需要创建组合函数,只需要将...所以可组合函数需要快速执行,所以避免组合函数中出现卡顿,如果你需要执行高昂的操作,请在狗太协程执行,并将结果作为参数传递给可组合函数。...以下演示了呈现列表重组如何跳过某些元素: /** * Display a list of names the user can click with a header */ @Composable

5.3K20

信息提醒之对话框(AlertDialog + ProgressDialog)-更新

---- 带3个按钮(覆盖、忽略、取消)的对话框 用AlertDialog类创建的对话框最多可以添加3个按钮,除了上面添加两个方法,还可以使用setNeutralButton方法向对话框添加第三个按钮...实际上,这种对话框相当于将ListView控件放在对话框上,然后ListView添加若干简单的文本()。 在这个实例,选择后显示选中值,5S后自动关闭。 ?...由于存在“确定”按钮的单击事件需要引用AlertDialog变量,因此先使用create方法返回AlertDialog对象,然后单击事件中使用该变量 ---- 进度对话框 查看大拿的总结 进度对话框通过...,并将这些属兔对象添加到对话框。...AlertDialog.Builder.setView方法可以将视图对象添加到当前的对话框,使用下面的形式将一个视图对象添加到对话框

4.4K10

Menu

菜单的基本使用 官方API menu-resource Android,菜单被分为如下三种,选项菜单(OptionsMenu)、上下文菜单(ContextMenu)和子菜单(SubMenu) OptionsMenu...,onCreateOptionsMenu的参数menu,调用add方法添加 菜单,add(菜单项的组号,ID,排序号,标题),另外如果排序号是按添加顺序排序的话都填0即可!...加载给 第二个参数所对应的menu对象 如果需要设置图片,可以xml设置 android:icon="@drawable/setting" 高版本的SDK,即使设置了...} Android 3.0或者更高的版本,则是通过3.0引入的ActionBar的setting菜单: 5.0以上的版本则是ToolBar的,点击后出一个溢出式的菜单样式 ---- ContextMenu...说明 所谓的子菜单只是又嵌套了一层,仅此而已。

1K20

Android Compose 新闻App(五)Room复杂数据、AlertDialog弹窗、页面导航

① 显示弹窗 ③ 弹窗加载数据 四、页面导航 ① 创建Activity ② 创建页面 ③ 添加Compose导航依赖 ④ NavController和NavHost 五、数据展示 ① 导航传递参数 ②...三、AlertDialog弹窗   我会尽可能的用到Compose的控件,下面我们来用一下弹窗,首先我们要点击这个区域显示一个弹窗。...因为导航最好是项目搭建的初期就构建好,而不是现在再来弄,这很耗时间,但是又不能不做,因为要符合Compose的使用,先来说一下现在是什么业务场景,我们一个页面显示了列表,当要查看详情,进入另一个页面...好了,页面也创建好了,我们该使用导航了,也就是Navigation,Android的Jetpack的Navigation组件是支持Compose使用的,因此我们需要添加一个依赖库。...③ 添加Compose导航依赖 app的build.gradle的dependencies{}闭包添加如下依赖: //Compose 导航 implementation 'androidx.navigation

1.6K10
领券