浅析ViewGroup中的MeasureSpec和LayoutParams

    在ViewGroup的onMeasure测量过程中,通过“MeasureSpec”和"LayoutParams"来协助确定视图的尺寸,其中的"MeasureSpec"主要用来对父视图描述它需要的尺寸或位置,而“LayoutParams”主要是描述它需要的宽度和高度,相关详细解释如下:

(1)MeasureSpec主要有如下三个值
UNSPECIFIED:让父视图直接按照子视图需要的尺寸进行分配。例如LinearLayout的measure过程。这种情况下,一般都是父视图是AdapterView,通过measure方法传入模式。

EXACTLY:强迫子视图的尺寸必须按照父视图分配的尺寸进行测量,若“子视图的实际尺寸小于这个尺寸”,则须扩大;若“子视图的实际尺寸大于这个尺寸”,则须缩小。例如Layout_Width、Layout_Height的属性为具体数值或fill_parent。


AT_MOST:强迫让子视图使用最大尺寸,但不得大于父视图定义的尺寸,可以小于这个最大尺寸。例如Layout_Width、Layout_Height的属性为wrap_content。

(2)LayoutParams主要有如下三个值
fill_parent、wrap_content和具体数值三个值
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值