我需要一个ImageView缩放图像,直到水平填充父级 .
如果imageview背景为红色,其余内容(图片下方)为绿色,我正在寻找 Picture 1 显示的结果 . 如果图像宽度高于屏幕宽度,则自动获得该结果 .
但如果是图片2中的小图片,我可以获得的最佳结果是 picture 3 (将ImageView宽度和高度设置为 fill_parent ,将scaleType设置为 FitStart
获得图片4设置height = wrap_content,width = fill_parent,scaleType = CenterCrop . 它应该垂直缩放以显示整个图像,但是当scaleType表示它会裁剪它 .
即使图像很小,任何获取图片1的想法?
将奖励50分给工作答案
3 回答
我找到了一个对我有用的简单解决方案 . 根据需要设置宽度和高度,例如:
然后你还设置这个设置:
“adjustViewBounds”默认为false(我觉得很奇怪),但设置它可以很容易地在imageview中填充图像 .
它以小图片获得了's doable without custom classes. This is the result I':
大图:
您必须使用
RelativeLayout
才能使其正常工作,但您可以将其与LinearLayout
结合使用以实现您所需的一切 . 这是我的xml:诀窍是你将它设置为填满屏幕,但它必须高于其他布局 . 这样您就可以实现所需的一切 .
试试这个:
Note:
别忘了拨打
fitXUniformly(parentWidth);
. 在这里,parentWidth
将是CustomImageView
的父级的宽度 .我希望它会有所帮助!!