java - 要在 ImageView 中更新图像,哪个方法更好 setImageResource() 或 setImageDrawable()
问题描述
我是 Android 新手,在学习 ImageView 小部件时,我学习了 2 种可能的方法来更新 ImageView 中的图像。
这是导师建议的方式:
onButtonClick(View view) {
ImageView myImageView = (ImageView) findViewById(R.id.imageView);
myImageView.setImageResource(R.drawable.cn);
}
另一个是我自己提出的:
onButtonClick(View view) {
ImageView myImageView = (ImageView) findViewById(R.id.imageView);
newDrawable = getResources().getDrawable(R.drawable.cn);
myImageView.setImageDrawable(null);
myImageView.setImageDrawable(newDrawable);
}
我想更好地理解一些事情:
- 在我的情况下推荐哪种方法?
- 使用 setImageResource() 与 setImageDrawable() 的优缺点是什么
解决方案
在您的情况下, setimageResource 会更好,因为您只需要设置图像。
getResources().getDrawable(R.drawable.cn);
如果您需要对可绘制对象进行更改,例如颜色过滤、调整大小等,这将是值得的。
推荐阅读
- python - 按连续天数计算组的值
- sql - 从 pyspark 查询 Thrift 数据库时获取行中的列名
- flutter - onPopPage 和 popRoute 的区别
- excel - 如何从网页上的表格中复制数据并粘贴到excel中
- python - 不断检查 tkinter 中的文本框
- kubernetes-helm - 有没有办法显示我的所有版本都使用什么版本的图表依赖项?
- recursion - 难以分析函数的递归步骤
- flutter - 当我重新启动应用程序时,笔记正在显示,我能够保存但无法从数据库动态获取保存的笔记。我正在使用 sqflite
- android - 使用 ADB 脚本读取 Android 电话通话记录
- typescript - 打字稿:从模块/对象值推断联合类型