Masonry详解

作者: 小吖朱 | 来源:发表于2017-02-05 09:32 被阅读0次

    Masonry是一款强大iOS第三方约束类库。
    它的内部原理是什么呢!
    它充分的利用了链式编程思想和函数式编程思想进行编程!所有属性都是通过使用点语法来点出来!
    它通过调用Block来进行编程:通过一个Mas_makeConstraints:^(NSconstraintsMaker *make)block;
    这个masonry 主要是通过这个约束制造者来进行约束!
    通过调用这个Block然后去去内部调用下一级!
    Masonry主要,通过这个Block 的调用!需要注意的是!在我们使用Masonry的时候Masonry会帮我们做一件事,会把系统的translatesAutoresizingMaskConstraints设置为NO!
    Masonry 在内部会首先帮我们创建一个约束制造者!
    然后在调用Block(constraintMaker)

    • (NSArray *)mas_makeConstraints:(void(^)(MASConstraintMaker *))block {
      self.translatesAutoresizingMaskIntoConstraints = NO;
      MASConstraintMaker *constraintMaker = [[MASConstraintMaker alloc] initWithView:self];
      block(constraintMaker);
      return [constraintMaker install];
      }
      也就是这个方法,它会返回一个数组。把我们外面写好的约束数组给我们返回到内部然后进行处理!
      它的具体步骤是:
    1. 首先会创建一个约束制造者然,并且绑定控件!
    2. 执行mas_makeConstraints:传入进行Block
    3. 让约束制造者安装约束!

    安装的时候步骤是:
    1、首先会清除以前的约束
    2、然后把传入数组遍历一遍然吧吧约束安装

    相关文章

      网友评论

        本文标题:Masonry详解

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