Masonry控制台打印约束冲突问题解决


不知道你是不是视图的布局也是用的第三方Masonry,在使用中是不是也遇到了控制台约束冲突的警告打印,看下图:

从输出的信息可以知道,有的控件的约束明显重复了设置,所以指出了是哪个控件,重复设置了哪些约束等等。。。。

Masonry可以设置约束的优先级,优先级分为priorityHigh,priorityMedium,priorityLow(高,中等,低)三个等级。优先级默认为中等,所以当我们对某一个控件的约束条件重复后,会打印警告信息,告诉我们应该去修复它们。

 

既然知道了警告的产生原因,那么解决办法有两种:

1.找到该控件,修改它的相关约束,以消除警告信息。

2.将控件的约束优先级置为高级,那么就算约束重复了也不会有警告。这也是最简单省事的办法。

 看下面我的解决方法:简单粗暴!!!

 [self.shareImageV mas_remakeConstraints:^(MASConstraintMaker *make) {
        make.left.equalTo(weakSelf.mas_left).offset(LIST_RIGHT + 5).priorityHigh();
        make.top.equalTo(weakSelf.contentTextView.mas_bottom).offset(LIST_TOP/2);
        make.right.equalTo(weakSelf.mas_right).offset(-LIST_RIGHT/2).priorityHigh();
        make.bottom.equalTo(weakSelf);
    }];

Masonry可以设置约束的优先级今天才知道。。。长知识了!!!


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM