Android imageview 不尊重 maxWidth?
所以,我有一个图像视图,应该显示任意图像,即从互联网下载的个人资料图片。我希望 ImageView 缩放其图像以适合父容器的高度,并将最大宽度设置为 60dip。但是,如果图像比例较高,并且不需要完整的 60dip 宽度,则 ImageView 的宽度应减小,以便视图的背景紧贴图像周围。
我尝试了这个,
<ImageView android:id="@+id/menu_profile_picture"
android:layout_width="wrap_content"
android:maxWidth="60dip"
android:layout_height="fill_parent"
android:layout_marginLeft="2dip"
android:padding="4dip"
android:scaleType="centerInside"
android:background="@drawable/menubar_button"
android:layout_centerVertical="true"/>
但是由于某种原因,这使得 ImageView 变得非常大,也许它使用了图像的固有宽度和 wrap_content 来设置它 - 无论如何,它不尊重我的 maxWidth 属性..这是否只在某些类型的内部起作用容器?它在 LinearLayout 中......
有什么建议吗?
So, I have an imageview that should display an arbitrary image, a profile picture downloaded from the internet. I want this the ImageView to scale its image to fit inside the height of the parent container, and a set max width of 60dip. However, if the image is tall ratio-wise, and doesn't need the full 60dip of width, the ImageView's width should decrease so the view's background fits snugly around the image.
I tried this,
<ImageView android:id="@+id/menu_profile_picture"
android:layout_width="wrap_content"
android:maxWidth="60dip"
android:layout_height="fill_parent"
android:layout_marginLeft="2dip"
android:padding="4dip"
android:scaleType="centerInside"
android:background="@drawable/menubar_button"
android:layout_centerVertical="true"/>
but that made the ImageView super large for some reason, maybe it used the intrinsic width of the image and wrap_content to set it - anyway, it didn't respect my maxWidth attribute.. Does that only work inside some types of containers? It's in a LinearLayout...
Any suggestions?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
啊,
这是 maxWidth 工作所必需的。
现在可以工作了!
Ah,
is required for maxWidth to work.
Works now!
如果您使用
match_parent
,设置adjustViewBounds
没有帮助,但解决方法是简单的自定义ImageView
:Setting
adjustViewBounds
does not help if you usematch_parent
, but workaround is simple customImageView
: