zoukankan      html  css  js  c++  java
  • Masonry 原理与使用说明

    原理:

    1)约束生成;MASConstraintMaker;

    2)缺省补齐:

    - (void)setSecondViewAttribute:(id)secondViewAttribute {

        if ([secondViewAttribute isKindOfClass:NSValue.class]) {

            [self setLayoutConstantWithValue:secondViewAttribute];

        } else if ([secondViewAttribute isKindOfClass:MAS_VIEW.class]) {

            _secondViewAttribute = [[MASViewAttribute alloc] initWithView:secondViewAttribute layoutAttribute:self.firstViewAttribute.layoutAttribute];

        } else if ([secondViewAttribute isKindOfClass:MASViewAttribute.class]) {

            _secondViewAttribute = secondViewAttribute;

        } else {

            NSAssert(NO, @"attempting to add unsupported attribute: %@", secondViewAttribute);

        }

    }

    3)寻找约束添加视图,并添加

        if (self.secondViewAttribute.view) {

            MAS_VIEW *closestCommonSuperview = [self.firstViewAttribute.view mas_closestCommonSuperview:self.secondViewAttribute.view];

            NSAssert(closestCommonSuperview,

                     @"couldn't find a common superview for %@ and %@",

                     self.firstViewAttribute.view, self.secondViewAttribute.view);

            self.installedView = closestCommonSuperview;

        } else if (self.firstViewAttribute.isSizeAttribute) {

            self.installedView = self.firstViewAttribute.view;

        } else {

            self.installedView = self.firstViewAttribute.view.superview;

        }

    4)

    (1)绝对尺寸信息添加到自身;

    (2)绝对布局数据添加到父视图;

    (3)参考系属性缺失补全为目标属性。

  • 相关阅读:
    XSS--PHPwind5.3复现
    网络基础一
    不老的神器--namp,awvs
    苏醒的巨人----CSRF
    XSS--编码绕过,qcms,鲶鱼cms
    XSS----payload,绕过,xss小游戏记录
    sql注入--高权限,load_file读写文件
    提权基础-----mysql-udf提权
    weblogic AND jboss 反序列化漏洞
    简单的压力测试工具 siege
  • 原文地址:https://www.cnblogs.com/feng9exe/p/7929779.html
Copyright © 2011-2022 走看看