设置背景:
RelativeLayout layout = (RelativeLayout) findViewById(R.id.background);
layout.setBackgroundResource(R.drawable.ready);
是最好的方法吗?
原文由 Chad Bingham 发布,翻译遵循 CC BY-SA 4.0 许可协议
RelativeLayout layout = (RelativeLayout) findViewById(R.id.background);
layout.setBackgroundResource(R.drawable.ready);
是最好的方法吗?
原文由 Chad Bingham 发布,翻译遵循 CC BY-SA 4.0 许可协议
15 回答8.4k 阅读
8 回答6.2k 阅读
1 回答4k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
3 回答1.7k 阅读✓ 已解决
layout.setBackgroundResource(R.drawable.ready);
是正确的。实现它的另一种方法是使用以下内容:
但我认为出现问题是因为您正在尝试加载大图像。
这 是一个很好的教程如何加载大位图。
更新:
在 API 级别 22 中不推荐使用 getDrawable(int)
getDrawable(int )
现在在 API 级别 22 中已弃用。您应该改用支持库中的以下代码:如果您参考 ContextCompat.getDrawable 的源代码,它会为您提供如下内容:
有关 ContextCompat 的更多详细信息
从 API 22 开始,您应该使用
getDrawable(int, Theme)
方法而不是 getDrawable(int)。更新:
如果您使用的是 support v4 库,以下内容对于所有版本就足够了。
您需要在应用程序 build.gradle 中添加以下内容
或者在任何 API 中使用 ResourceCompat,如下所示: