首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >ContextCompat.GetColor不返回颜色

ContextCompat.GetColor不返回颜色
EN

Stack Overflow用户
提问于 2015-11-19 12:51:04
回答 2查看 4.4K关注 0票数 8

我正在尝试用ContextCompat.GetColor替换Resources.GetColor,但最后一个没有返回颜色,我不知道应该使用什么来代替Resources.GetColor(从API23开始不推荐使用它)。有没有人可以帮助我(见下文我想要实现的目标)?

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Button.SetBackgroundColor(ContextCompat.GetColor(this, Resource.Color.LightRed));

请注意,我使用的是Xamarin,但如果你有java的答案,我可以很容易地改编它。谢谢!

EN

回答 2

Stack Overflow用户

发布于 2015-11-20 11:17:58

ContextCompat只返回颜色的整数表示形式。您需要通过拆分RGB部分将其转换为Android颜色。使用像这样的东西

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
using Android.Graphics;

public static Color GetColorFromInteger(int color)
{
    return Color.Rgb(Color.GetRedComponent(color), Color.GetGreenComponent(color), Color.GetBlueComponent(color));
}

在你的方法中

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
btn.SetBackgroundColor(GetColorFromInteger(ContextCompat.GetColor(this, Resource.Color.LightRed);
票数 1
EN

Stack Overflow用户

发布于 2016-03-15 16:37:46

我想我也遇到了同样的问题--通过在方法上添加注释@SuppressWarnings("ResourceAsColor")解决了这个问题。

原因是,在我看来,Lint目前不能识别新的API,即使它是有效的。这两种方法都返回表示已解析颜色的整数。在我的测试中,Resources.GetColor()和ContextCompat.GetColor()返回相同的值。然而,当使用后者时,我在Android Studio中得到一个错误,说:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Should pass resolved color instead of resource id here: `getResources().getColor(titleColor)`

...which没有意义,因为我传递的是一个已解析的颜色。这只是一个int,所以我怎么会错呢...所以总而言之,我认为抑制Lint错误是目前处理这种情况的有效方法。

如果你不同意,请提高你的声音,我会感兴趣的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33804504

复制
相关文章
Vue3返回关闭弹窗不返回页面
完整代码 按钮和弹窗为vant组件,需自行引入 <template> <van-button @click="showPop()">点击弹窗</van-button> <van-popup v-model:show="state.isPop" position="bottom" :style="{ height: '30%' }" @close="addPopState()" /> </template> <script setup> import {
明知山
2022/05/05
3.4K0
Vue3返回关闭弹窗不返回页面
Vue监听返回键关闭弹出层不返回页面
//监听页面销毁之前 beforeDestroy() { window.removeEventListener( "popstate", () => { if (this.showPop) { this.showPop = false; } else { this.$router.go(-1); } }, false ); }, //使用了keep
明知山
2020/09/02
3.3K0
HTTP返回码总结,拿走不谢!
100(继续) 请求者应当继续提出请求。 服务器返回此代码表示已收到请求的第一部分,正在等待其余部分。
随心助手
2019/10/15
2.1K0
nc命令卡住不返回的分析
这两天排查解决了一个问题,问题的解决其实很简单,但是整个分析过程还是很有意义的,本文对整个分析过程以及问题如何解决进行总结。
陈猿解码
2023/02/28
2.7K0
nc命令卡住不返回的分析
79-装饰器,返回不同颜色的字体
def colors(c): def set_color(func): def red(*word): return '\033[31;1m%s\033[0m' % func(*word) def green(*word): return '\033[32;1m%s\033[0m' % func(*word) adict = {'red': red, 'green': green} ret
凯茜的老爸
2018/09/11
7890
【Qt】使用QPalette设置QPlainTextEdit颜色时,不生效
最近在看《Qt5.9 C++开发指南》这本书,这本书可以从异步社区上下载源代码,不过需要注册有点麻烦:
ccf19881030
2021/01/20
2.6K0
input框取消光标颜色手机端不生效
<style> input{ color:transparent; } </style> <input value="我要隐藏光标"> //文字颜色可以使用text-shadow属性 <style> input{ color:transparent; text-shadow:0 0 0 red; } </style> PC端没问题,但是手机端测试无效。 参考链接:http://blog.csdn.net/u010730897/article/details/72721960 这里我用div模拟一个
蓓蕾心晴
2018/04/12
1.4K0
input框取消光标颜色手机端不生效
Ionic3学习笔记(四)修改返回按钮文字、颜色
参考官网 Ionic API—Config 文档 可在 ./src/app/app.module.ts 中修改返回按钮文字
Theo Tsao
2018/09/07
4920
私人订制Android本地图片选择器
史上最强的安卓图片选择器——GalleryFinal; 简书博客地址——http://www.jianshu.com/p/48ddd6756b7a
代码咖啡
2018/08/28
1.4K0
私人订制Android本地图片选择器
Android 打开网页之CustomTabs
默认浏览器的话,是跳转到别的app,我方app就切换到后台了,至于什么时候返回回来就不确定了,且在后台有被回收的风险,不利于业务开展,如果是打开浏览器之后就完成任务的情况,可以使用。
yechaoa
2022/06/10
1.6K0
Android 打开网页之CustomTabs
动画修改Toolbar、TabLayout和StatusBar背景色
在使用别的APP时,TabLayout、Toolbar和StatusBar颜色会随着动画更改,就像下面这样: 实现方式也很简单,为了使当前颜色改变,并使用动画,我们需要在TabLayout.OnTab
code_horse
2018/07/02
1.5K0
android详解_MPAndroidChart
首先依赖 1. implementation ‘com.github.PhilJay:MPAndroidChart:v3.0.3’
全栈程序员站长
2022/09/20
1.3K0
android详解_MPAndroidChart
vue单页 使用keep-alive页面返回不刷新
使用vue单页开发项目时遇到一个很恶心的问题:在列表页点击一条数据进入详情页,按返回键返回列表页时页面刷新了,用户体验非常差啊!!!查阅了一下相关问题,使用<keep-alive>解决这个问题,下面是我的使用心得。
李维亮
2021/07/08
2.4K0
Android 关于 Snackbar 基本使用
Snackbar 呢,是 Android 官方的一个控件,它可以说跟 Toast 类似,在应用交互中给用户以友好提示的控件。
用户8928967
2023/02/28
2.3K0
Android 关于 Snackbar 基本使用
Kotlin超简单实现StepView
支持时间轴和StepView,三种布局,支持水平布局,垂直布局和自定义布局,截图如下
蜻蜓队长
2018/12/13
7780
DTO返回JSON时,不展示某字段;DTO返回JSON时,更改某展示字段的key
//DTO返回JSON时,不展示某字段 @JsonIgnore private String addresses; //DTO返回JSON时,更改某展示字段的key @JsonProperty(value = "addresses") public final CalendarVideoAddressDTO getAddressesJSON() { if (addresses != null) { return JSONObject.pars
qubianzhong
2019/04/22
2.3K0
kotlin recycler_view must not be null
就上面这一行很简单的代码,居然提示找不到recycler_view,难道是kotlin-android-extensions插件的问题?不可能啊,别的地方是可以的啊,唯一的差别就是recycler_view是在fragment中调用,别的是在activity调用而已,难道是这个时候view还没有创建吗?亦或是创建中?
yechaoa
2022/06/10
2090
点击加载更多

相似问题

ContextCompat.getColor()忽略NightMode

43

android ContextCompat.getColor无法解析方法

21

查找不返回符号和颜色

17

ContextCompat.getColor方法忽略夜间模式

10

ContextCompat.getcolor()到空对象引用

69
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文