Android 布局 fill_parent、wrap_content和match_parent的区别和作用

这三个东东都是用来设置你的控件在布局中的大小。其实具体的意思知道懂点英语就很简单了。

wrap_content

wrap 翻译过来是包裹,conten是内容。那么这个就是包裹内容的意思,也就是说你的控件里面的内容有多大,这个控件就有多大。

fill_parent和match_parent

关于这个两个东西网站争议还是比较大的,有人说他俩一个意思,2.2版本后更新。为了兼容低版本建议使用fill_parent。 
我们还是从字面意思翻译一下。 
fill一般翻译过来是填充,充满的意思 
match一般翻译过来是相同,适应的意思。 
经过我本人的亲测,使用这个两个属性作用同一个控件,确实效果是一致的,他们的意思是

让作用的控件填充满父容器的其他空间。有点类似C#布局中的Dock属性。

最后还有一点是非常难理解的,就是这个其他空间怎么来理解,其实也很简单,上几个图你就知道了。

我使用线性布局LinearLayout垂直摆放两个按钮, 
如果上面按钮的高度是fill_parent或者match_parent,那么下面的按钮根本显示不出来。 
这里写图片描述

反之,上面是wrap_content,下面是fill_parent或者match_parent,那么上面会有,下面的这个按钮会填充满剩余的其他部分。 
这里写图片描述

那么到这里,这三个东西应该都明白了吧……

三个属性都用来适应视图的水平或垂直大小,一个以视图的内容或尺寸为基础的布局比精确地指定视图范围更加方便。

1)fill_parent

设置一个构件的布局为fill_parent将强制性地使构件扩展,以填充布局单元内尽可能多的空间。这跟Windows控件的dockstyle属性大体一致。设置一个顶部布局或控件为fill_parent将强制性让它布满整个屏幕。

2) wrap_content

设置一个视图的尺寸为wrap_content将强制性地使视图扩展以显示全部内容。以TextView和ImageView控件为例,设置为wrap_content将完整显示其内部的文本和图像。布局元素将根据内容更改大小。设置一个视图的尺寸为wrap_content大体等同于设置Windows控件的Autosize属性为True。

3)match_parent
   Android2.2中match_parent和fill_parent是一个意思 .两个参数意思一样,match_parent更贴切,于是从2.2开始两个词都可以用。那么如果考虑低版本的使用情况你就需要用fill_parent了

转载来自:http://blog.csdn.net/Biegral/article/details/46373219

http://www.cnblogs.com/nikyxxx/archive/2012/06/15/2551390.html


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值