iOS Masonry使用

本文详细介绍了如何在iOS中使用Masonry库进行AutoLayout的手动布局,包括添加约束、更新约束、设置约束优先级和比例,以及解决约束冲突和缺失的问题。通过实例展示了Masonry在视图布局中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#import “ViewController.h”
#import “Masonry.h”
@interface ViewController ()

@property (nonatomic, strong) UIView *backView;
@property (nonatomic, strong) UIView *backView1;
@property (nonatomic, strong) UILabel *oneLab;
@property (nonatomic, strong) UILabel *twoLab;

@end

@implementation ViewController

  • (void)viewDidLoad {
    [super viewDidLoad];

    //在使用Masonry添加约束之前,需要在addSubview之后才能使用,否则会导致崩溃。
    //在添加约束时初学者经常会出现一些错误,约束出现问题的原因一般就是两种:约束冲突和缺少约束。对于这两种问题,可以通过调试和log排查。
    //之前使用Interface Builder添加约束,如果约束有错误直接就可以看出来,并且会以红色或者黄色警告体现出来。而Masonry则不会直观的体现出来,而是以运行过程中崩溃或者打印异常log体现,所以这也是手写代码进行AutoLayout的一个缺点。

    //mas_makeConstraints() 添加约束
    //mas_remakeConstraints() 移除之前的约束,重新添加新的约束
    //mas_updateConstraints() 更新约束
    //equalTo() 参数是对象类型,一般是视图对象或者mas_width这样的坐标系对象
    //mas_equalTo() 和上面功能相同,参数可以传递基础数据类型对象,可以理解为比上面的API更强大
    //width() 用来表示宽度,例如代表view的宽度
    //mas_width() 用来获取宽度的值。和上面的区别在于,一个代表某个坐标系对象,一个用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值