ImageView setScaleType不起作用

时间:2013-12-23 20:52:23

标签: java android

我有一个ImageView,我想缩放CENTER_CROP。如果我在XML中设置图像src和缩放类型,它的效果很好。但我需要在代码中设置图像。以下无法正确缩放。它不是中心裁剪,而是拉伸图像以填充宽度。

imageView.setBackgroundResource(R.drawable.my_image);
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);

我尝试重新排序这些行,并尝试省略setScaleType并将其留给XML。都没有帮助。

2 个答案:

答案 0 :(得分:6)

setBackgroundResource设置了imageView背景,因此延伸的是正常行为......

使用setImageResource代替,它会设置imageview源,因此它将遵循您的scaleType定义。

答案 1 :(得分:0)

并且不要忘记你的ImageView必须是NOT:

 android:layout_width="wrap_content"
     android:layout_height="wrap_content"

但仅限于:

 android:layout_width="match_parent"
     android:layout_height="match_parent"

正确转型