使用@StyleableRes注释的obtainStyledAttributes.抑制警告

Ben*_*son 6 java android annotations android-resources android-studio

在看这里的答案时,我遇到了问题:

TypedArray ta = obtainStyledAttributes(R.style.MyCustomStyle, attrs);
Run Code Online (Sandbox Code Playgroud)

似乎Android Studio不允许我传入一个不是来自R.styleable资源而没有获得警告的int .

它告诉我它需要一个类型为styleable的资源,我假设这意味着我调用的代码已经使用@StyleableRes注释进行了注释

类型风格的预期资源

阅读R.style {x}中定义的值的最佳行动方案是什么?链接帖子上接受的答案有效并编译,但我不知道如何压制警告.因为有警告,压制是否安全?如果是这样,怎么样?

Sco*_*rta 9

我认为正确的方法来压制这个:

@SuppressWarnings("ResourceType")
Run Code Online (Sandbox Code Playgroud)

当我按下Alt-Enter以显示警告的修复并选择检查"常量和资源类型不匹配"选项 > 类的抑制(附加截图)时,我提供了此功能在此输入图像描述.

这个对我有用.

由于您所引用的任何代码都已写入,因此此检查的ID可能已更改; 我简要地查看了提交日志,但找不到对它的引用.