美文网首页
MeasureSpec测量

MeasureSpec测量

作者: 十叶一支花 | 来源:发表于2018-11-16 10:25 被阅读0次

MeasureSpec的Mode:Exactly、AT_MOST、unspecified。

用32位表示,高3位表示Mode,低30位表示Size。

private static final int MODE_SHIFT =30; //一个int四字节,32位。

private static final int MODE_MASK =0x3 << MODE_SHIFT;
00000000 00000000 00000000 00000011 <<30得到
11000000 00000000 00000000 00000000;

public static final int UNSPECIFIED =0 << MODE_SHIFT;
0左移30位?结果还是0,为啥要左移30位?
00000000 00000000 00000000 00000000 ;

public static final int EXACTLY =1 << MODE_SHIFT;
00000000 00000000 00000000 00000001 << 30得到
01000000 00000000 00000000 00000000 ;

public static final int AT_MOST =2 << MODE_SHIFT;
00000000 00000000 00000000 00000010 << 30得到
01000000 00000000 00000000 00000000 ;

··· public static int makeMeasureSpec(int size, int mode) {
return (size & ~MODE_MASK) | (mode & MODE_MASK);
}

    public static int getMode(int measureSpec) {
        return (measureSpec & MODE_MASK);
    }
    
    public static int getSize(int measureSpec) {
        return (measureSpec & ~MODE_MASK);
    }

···
高2位:
未定义UNSPECIFIED:00
精确EXACTLY:01
最多AT_MOST:10

使用都用到MODE_MASK:
11000000 00000000 00000000 00000000

相关文章

  • View之测量MeasureSpec

    View中的MeasureSpec View在测量过程中依赖于测量规则 MeasureSpec。 DecorVie...

  • MeasureSpec测量

    MeasureSpec的Mode:Exactly、AT_MOST、unspecified。 用32位表示,高3位表...

  • View的工作流程-measure过程

    前言 上一篇文章深入理解MeasureSpec我们分析了View的测量规格,根据MeasureSpec才能测量出V...

  • 理解MeasureSpec

    4.2 理解MeasureSpec 为了更好地理解View的测量过程,我们还需要理解MeasureSpec。从名字...

  • Android view架构

    view测量与绘制 view的测量MeasureSpec:定义:由SpecMode(int)于SpecSize(i...

  • 重新理解MeasureSpec

    1 概述 网上有许多非常好的文章都在介绍MeasureSpec的测量规则,但是没有介绍MeasureSpec的作用...

  • Measure过程

    一、MeasureSpec MeasureSpec是View的一个静态内部类。他是测量过程的依据,所以先要了解这个...

  • view绘制步骤

    测量(Measure) 测量规格(MeasureSpec):包含两部分,1.模式,2.大小。 1.模式...

  • View的绘制流程

    View 测量过程&MeasureSpec ViewRootImpl的layout方法实际调用了performTr...

  • View系列笔记(三)理解MeasureSpec

    MeasureSpec字面意思可以理解为“测量规格”,在测量过程中,系统会将View的LayoutParams根据...

网友评论

      本文标题:MeasureSpec测量

      本文链接:https://www.haomeiwen.com/subject/dqupfqtx.html