阅读量:0
MeasureSpec是用来告诉View父容器在测量子View的时候应该如何测量的一个规范。它由两部分组成:测量模式和测量大小。
测量模式有三种:EXACTLY、AT_MOST和UNSPECIFIED。
- EXACTLY:子View的大小是确定的,父容器会按照子View的大小来测量。
- AT_MOST:子View的大小不能超过父容器的大小,父容器会根据子View的大小来测量,但是不能超过自己的大小。
- UNSPECIFIED:子View的大小没有限制,父容器会根据子View的大小来测量。
测量大小是一个具体的数值,代表子View在某一个方向上应该占据的大小。
正确解读MeasureSpec值应该根据具体的情况来判断,根据测量模式和测量大小来确定子View应该占据的大小。在自定义View或者重写View的onMeasure方法时,需要根据MeasureSpec来测量子View的大小,并根据测量模式来确定最终的大小。