美文网首页
关于Masonry的使用

关于Masonry的使用

作者: 胡胡LoL | 来源:发表于2017-11-01 00:38 被阅读29次

1.Mansonry不用弱引用 为什么不会循环引用?

-(NSArray )mas_makeConstraints:(void(^)(MASConstraintMaker ))block {
self.translatesAutoresizingMaskIntoConstraints = NO;
MASConstraintMaker *constraintMaker = [[MASConstraintMaker alloc] initWithView:self];
block(constraintMaker);
return [constraintMaker install];
}

这个和网络请求里面使用self道理是一样的。因为UIView未强持有block,所以这个block只是个栈block,而且构不成循环引用的条件。栈block有个特性就是它执行完毕之后就出栈,出栈了就会被释放掉。看mas_makexxx的方法实现会发现这个block很快就被调用了,完事儿就出栈销毁,构不成循环引用,所以可以直接放心的使用self。

masonry里面没有额外引用起来,block执行完之后就随着方法执行完之后就销毁了,不存在一直被引用释放不了的问题,所以无需weak,当然weak也无所谓。

相关文章

  • Masonry

    Masonry使用方法Masonry的使用Masonry的github地址 本篇文章 Masonry的基本使用方法...

  • 关于Masonry的使用

    1.Mansonry不用弱引用 为什么不会循环引用? 这个和网络请求里面使用self道理是一样的。因为UIView...

  • Masonry使用方法

    Masonry的使用 Masonry的github地址 Masonry的基本使用方法 给控件添加约束使用Mason...

  • 10.4 Masonry使用-动画

    Masonry使用-动画 会进行上下缩放 Masonry使用-动画1.png Masonry使用-动画2.png

  • 第三方库--Masonry的基本使用

    Masonry是目前最流行的AutoLayout框架. 使用: 将Masonry文件包拖入项目 使用Masonry...

  • Masonry的使用思考

    今天我想写一下关于对Masonry的使用总结 不得不说Masonry确实非常好用 好用好用好用到爆!!! 在使用之...

  • Masonry 关于ScrollView的使用

    问题描述 开发中遇到了关于Masonry对于Scrollview的contentSize的设置问题。通过阅读Mas...

  • Masonry学习报告

    Masonry 源码:https://github.com/Masonry/Masonry 如果是使用cocoa ...

  • iOS Masonry布局UI之约束冲突解决

    想必Masonry是什么?就不用解释了。公司项目采用纯代码布局,使用的就是Masonry,当然使用Masonry布...

  • SDAutoLayout 适配

    以前工程里使用的都Masonry 适配的, 在工程中使用Layout比较少, 网上也很多关于SDAutoLayou...

网友评论

      本文标题:关于Masonry的使用

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