frameLayout child的 match-parent属性问题

现在有一个需求

<LinearLayout>

<FrameLayout >

--- <ImageView/>

--- <Button/> 

</FragmeLayout>

</LinearLayout>


FrameLayout 的宽度是  wrap-content

ImageView的宽度是 wrap_content

Button的宽度 也是Math-parent的宽度

即外层宽度适配ImageView的宽度。 同时想让Button的宽度与FrameLayout的宽度一致


但是实际运行的时候  发现Button会把FrameLayout撑大。跟最外层的LinearLayout一样宽


为了解决这个问题,需要给Button在嵌套一层LinearLayout

http://stackoverflow.com/questions/4606613/combining-wrap-content-on-parent-and-fill-parent-on-child

In theory what you are describing should not work ("Because it the parent gets it's height from the childs and vice-versa".) However, we made it work in LinearLayout because it was a very common use case. I recently added similar support to FrameLayout (this feature should be part of Honeycomb.) What you are doing is therefore perfectly valid and will work just fine.

你可能感兴趣的:(frameLayout child的 match-parent属性问题)