自动布局更新约束,更新界面的方法

在日常开发中经常需要根据不同的业务场景对控件做不同的展示,如果你是用的自动布局,可以参考一下以下方法。

 

mas_make

Constraints

mas_update

Constraints

mas_remake

Constraints

已有某种约束,再添加 不更新约束 更新约束 更新约束
没有某种约束,再添加 更新约束 更新约束 更新约束
是否删除已有约束 不删除已有约束 不删除已有约束 删除已有约束

举个例子:

某个view默认约束为

[self.footerView mas_makeConstraints:^(MASConstraintMaker *make) {

        make.left.bottom.right.equalTo(self.view);

        make.height.equalTo(@70);

    }];

//使用以下方法只会更新bottom的约束,其它约束不会变

[self.tableView mas_updateConstraints:^(MASConstraintMaker *make) {

        make.bottom.equalTo(self.view).priorityHigh();

    }];

//使用以下方法会删除已有的约束,只会增加bottom的约束

[self.tableView mas_remakeConstraints:^(MASConstraintMaker *make) {

        make.bottom.equalTo(self.view).priorityHigh();

    }];

//更新页面

[self.view updateConstraintsIfNeeded];

[self.view layoutIfNeeded];

 

你可能感兴趣的:(笔记)