Android ImageView.setBackgroundResource和ImageView.setImageResource之间有什么区别?
我在设置图像时看到了这些不同的方法,但我不明白其中的区别Android ImageView.setBackgroundResource和ImageView.setImageResource之间有什么区别?,android,image,background,imageview,Android,Image,Background,Imageview,我在设置图像时看到了这些不同的方法,但我不明白其中的区别 为什么有两种方法?setBackgroundResource用于设置图像视图的背景。 setImageResource用于设置ImageView的src图像。 鉴于: 然后: 将使图像适合整个背景。这意味着即使图像大小太小,它也会拉伸图像以完全填充该背景 imageView.setImageResource(R.drawable.imagedata); 将仅占用ImageView中图像的大小。 为此,您还需要设置 android:lay
为什么有两种方法?setBackgroundResource用于设置图像视图的背景。
setImageResource
用于设置ImageView的src图像。
鉴于:
然后:
将使图像适合整个背景。这意味着即使图像大小太小,它也会拉伸图像以完全填充该背景
imageView.setImageResource(R.drawable.imagedata);
将仅占用ImageView中图像的大小。
为此,您还需要设置
android:layout_width="wrap_content"
android:layout_height="wrap_content"
用于您的ImageView。如果图像的大小小于ImageView,则剩余边框将留空,并显示背景。SetBackDrondResource用于在ImageView的背景上设置可绘制或颜色,您的setImageResource类似于在其上显示
因此,setImageResource用于将任何资源添加到imageview的前端。试试这个例子,看看区别。这是一个两层效果,背面(setBackgroundResource)和正面(setImageResource)。
setBackgroundResource
设置ImageView的背景图像。XML属性是:android:background
setImageResource
设置图像视图中显示的图像。XML属性是:android:src
该方法属于所有视图。该方法仅属于ImageView
。您可以同时设置它们:
imageView.setBackgroundResource(R.drawable.sky);
imageView.setImageResource(R.drawable.balloons);
setBackgroundResource()
方法将导致图像的宽度和高度被拉伸以填充视图的大小。setImageResource()
方法将使其图像保持其纵横比
我更全面的回答是。但是你需要设置一些填充物还是什么?设置填充物的原因是什么?将其视为两层:背景在后面,源作为前景。如果图像源不透明,您将无法看到背景。例如,如果您希望src图像周围有白色边框,您可以设置imageview的填充,并将白色设置为背景资源。否则就不需要填充了。你的“androidpeople.com”链接已经死了。但我可以想象你所说的“双层效应”。谢谢
android:layout_width="wrap_content"
android:layout_height="wrap_content"
imageView.setBackgroundResource(R.drawable.sky);
imageView.setImageResource(R.drawable.balloons);