Masonry

主要属性

@property (nonatomic, strong, readonly) MASConstraint *left;//左侧
@property (nonatomic, strong, readonly) MASConstraint *top;//上侧
@property (nonatomic, strong, readonly) MASConstraint *right;//右侧
@property (nonatomic, strong, readonly) MASConstraint *bottom;//下侧
@property (nonatomic, strong, readonly) MASConstraint *leading;//首部
@property (nonatomic, strong, readonly) MASConstraint *trailing;//尾部
@property (nonatomic, strong, readonly) MASConstraint *width;//宽
@property (nonatomic, strong, readonly) MASConstraint *height;//高
@property (nonatomic, strong, readonly) MASConstraint *centerX;//横向中点
@property (nonatomic, strong, readonly) MASConstraint *centerY;//纵向中点
@property (nonatomic, strong, readonly) MASConstraint *baseline;//文本基线

术语解释

  • 必须先将视图添加至父视图([fatherView addSubview:View]),才能进行设置。
  • 在Masonry中,and,with都没有具体操作,仅仅是为了提高程序的可读性。
    make.left.and.top.mas_equalTo(20);
    等价于
    make.left.top.mas_equalTo(20);
  • 设置距离数值时,正数为向右的距离,负数为向左相距的距离。
  • 如果约束条件是数值或者结构体等类型,可以使用mas_equalTo进行包装。
    一般将数值类型的约束用mas_equalTo,而相对于某个控件,或者某个控件的某个约束,使用equalTo,如:
    make.size.mas_equalTo(CGSizeMake(100, 100));
    make.center.equalTo(weakSelf.view);

约束函数

添加大小约束(大小为100 *100)
make.size.mas_equalTo(CGSizeMake(100, 100));

居中约束
make.center.equalTo(weakSelf.view);

与左边界约束(本视图左侧与父视图边界相切为0)
make.left.equalTo(self.view).offset(0);

与其他控件宽度约束(本视图的宽度与其余两个视图宽度相等)
make.width.equalTo(@[topView,bottomView]);

设置两个控件之间的距离(顶部与上一个视图底部相距150)
make.top.mas_equalTo(topView.mas_bottom).offset(150);

与左、下均相切
make.left.bottom.equalTo(self.view).offset(0);

设置宽和高的约束(均为150)
make.width.height.mas_equalTo(150);

设置两个控件关联(该控件与目标控件高度一致【纵坐标相等】)
make.centerY.mas_equalTo(imageView1);

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • iOS_autoLayout_Masonry 概述 Masonry是一个轻量级的布局框架与更好的包装AutoLay...
    指尖的跳动阅读 5,017评论 1 4
  • [置顶]iOS - Masonry使用中的一些整理 标签:iOS资源大全iOS常用方法iOS学习资料Masonry...
    DreamMakerSky阅读 8,407评论 0 4
  • (一)Masonry介绍 Masonry是一个轻量级的布局框架 拥有自己的描述语法 采用更优雅的链式语法封装自动布...
    木易林1阅读 7,218评论 0 3
  • Masonry是一个轻量级的布局框架,拥有自己的描述语法,采用更优雅的链式语法封装自动布局,简洁明了并具有高可读性...
    3dcc6cf93bb5阅读 5,836评论 0 1
  • 高友互动 当我还是小学生的时候,我梦想环游世界。 答应和我结伴同行的是小A。 还记得有一天下午只上了两节课,我和小...
    老关中阅读 3,173评论 0 0

友情链接更多精彩内容