我有一种方法可以在父元素内部的特定元素上wrap_content
吗?例如,我有类似以下布局:
<RelativeLayout width:match height:wrap>
<ImageView width:match height:wrap scale:fitXY />
<LinearLayout width:wrap height:wrap>
</RelativeLayout>
父包装约束非常松散,但我希望它专门使用匹配的宽度,但总是匹配图像视图的高度。
当我将此视图放在另一个RelativeLayout中时,会出现问题,其中每个视图在另一个视图上方或下方对齐,以填充可能更改的超视图。 LinearLayout似乎并没有真正填充,所以我切换到相对,但是当我这样做时,上面描述的视图在我希望它仍然匹配图像视图的高度时垂直拉伸。
这个问题有一个很好的解决方案吗?
答案 0 :(得分:0)
您可以尝试在onResume()方法中添加以下(伪代码):
if(myRelativeLayout.height > myImageView.height)
myRelativeLayout.setHeight(myImageView.height);
在执行此操作之前,您需要确保调用myRelativeLayout.measure()
,以便系统知道View
的大小。
只是一个想法让你尝试,让我知道它是否有效:)