在查看答案here时,我遇到了问题:
TypedArray ta = obtainStyledAttributes(R.style.MyCustomStyle, attrs);
似乎Android Studio不允许我传入一个不是来自R.styleable
资源的int,而不会收到警告。
它告诉我它需要一个类型为styleable的资源,我认为这意味着我正在调用的代码已使用@StyleableRes annotation注释
读取R.style中定义的值的最佳操作方法是什么。{x}?链接帖子上接受的答案有效并编译,但我不知道如何压制警告。因为有警告,压制是否安全?如果是这样,怎么样?
答案 0 :(得分:9)
我认为正确的方法可以抑制这种情况:
@SuppressWarnings("ResourceType")
当我按下Alt-Enter以显示警告的修正并选择检查'常量和资源类型不匹配'选项>时,我提供了此功能。 抑制课程(附加截图)。
它对我有用。
由于您所引用的任何代码都已写入,因此此检查的ID可能已更改;我简要地查看了提交日志,但找不到对它的引用。
答案 1 :(得分:0)
您可以使用@SuppressWarnings("ResourceType")
取消针对问题所在方法的警告检查,或者只是在该行之前使用//noinspection ResourceType
,以避免仅在该行代码中进行检查。