当前位置: 首页 > 知识库问答 >
问题:

Android发布错误:预期颜色资源ID(R. cole.),但收到一个RGB整数

秦承允
2023-03-14

我在市场上申请了一年。上周,我更改了我的应用程序的源代码。当我想要构建发布版本时,Android Studio抛出了一个错误:

“错误:应为颜色资源id(R.color.)但收到一个RGB整数[ResourceType]。”

颜色只在代码的这一部分使用,我没有做任何修改​​本部分的任何变更:

if (android.os.Build.VERSION.SDK_INT >= 16) {
            rlFlash.setBackground(new ColorDrawable
                    (Color.parseColor(("#86cc55"))));
        }
        else{
            rlFlash.setBackgroundDrawable(new ColorDrawable
                    (Color.parseColor(("#86cc55"))));
        }

奇怪的是,在调试版本中,Android studio没有抛出任何错误,我可以构建apk。

你知道发生了什么吗??

谢谢

共有3个答案

干京
2023-03-14

如果您在此方法中使用了anotation@ColorRes,请删除该选项。将成功生成apk。请参阅SO答案,以进一步澄清皮棉检查。答案如下:

在您自己的代码中有Java注释来支持这些检查。它们都可以在android中找到。支持注释包:IdRes DrawableRes LayoutRes StringRes ColorRes

private void mySetContentView(@LayoutRes int resourceId) {
    setContentView(resourceId); 
} 

androidstudio将检查提供的资源id是否确实用于布局。此外,这些注释是导出的,因此它们在设计库时特别有用。

皇甫树
2023-03-14

虽然为时已晚,但这个答案适用于那些像我这样在发布版本时仍然会出现错误的人。不知道这是一个解决方案还是只是权宜之计。

@SuppressLint("ResourceType")

在你的方法签名处使用这个,就像下面你得到错误的地方一样。

@SuppressLint("ResourceType")
public void aMethodWhereYouMayGetTheError(){
}

通过使用它,您将能够在没有该错误的情况下进行发布构建。

万俟小林
2023-03-14

这样做:

rlFlash.setBackgroundColor(Color.parseColor("#86cc55"));
 类似资料:
  • 问题内容: 我有这个代码 现在,我想在主班级中创建一个新布局 但是,每当我调用TITLE_ID和REVIEW_ID时,都会给我一个错误 提供的资源标识符类型错误。 例如,当调用Resources.getString(int id)时,您应该传递R.string.something,而不是R.drawable.something。 将错误的常量传递给需要一组特定常量之一的方法。例如,在调用View#

  • 问题内容: 如何解决错误: [$ resource:badcfg]资源配置错误。预期响应包含一个数组但有一个对象? //服务 //控制器 问题答案: 首先,您应该以不同的方式进行配置:URL中没有查询参数。默认查询参数可以作为中的第二个参数的属性传递。还要提到的是,您配置资源的方法并改为使用。 服务 文献资料 http://docs.angularjs.org/api/ngResource.$re

  • 在android studio中,当我想要生成签名apk时,会导致以下错误:

  • 该项目运行良好,但当我尝试生成签名APK时,它显示了一个错误:错误:在Main活动中,预期资源类型为可绘制[ResourceType]: 当您点击按钮时,应用程序会显示图像并播放声音。问题是为什么在声音的情况下一切都好,但这里有一个错误: 我很感激任何帮助

  • 问题内容: 编辑: 给出答案后,我执行了此功能 我的目标是这个。我抓取图片并遍历每个像素,然后抓取其x,y和rgb。 我拥有一个预定义的数组,而不是仅仅抓住rgb,我正在寻找从我抓取的颜色到预定义数组的最接近的匹配项。这里的目标是仅使用预定义数组中的颜色。这是我的颜色数组。 这是我现有的遍历所有内容的代码。 rgb2hex是用户定义的函数,但是我要完成的功能是使用该函数更改该函数以获取最接近的颜色

  • 在android studio中,当我想要生成签名apk时,会导致以下错误: