frameLayout child的 match-parent属性问题

来源:互联网 发布:qt编程html5教程 编辑:程序博客网 时间:2024/06/11 15:35

现在有一个需求

<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.

0 0
原创粉丝点击