前言
写这篇文章的原因主要是因为看着布局警告不得劲儿
SnapKit作为Swift自动布局中较为优秀的三方库,大多数人都会采用,然而在使用过程中会遇到一些奇怪的打印(下文中会列举几个比较常见的),然而并不影响最终展示效果。但是看着这些无用的打印还是比较恶心的,那么如何消除这些打印呢?
1.Unable to simultaneously satisfy constraints.
2.Will attempt to recover by breaking constraint
自动布局完成之后,运行效果如期而至,一看控制台,满屏的打印,大多是以上两种
解决方案如下:
1.Warning_1 中的警告直接忽略掉,千万不要大费周章的挨个去找对应类里面的元素的布局
2.直接去找第二步中的警告所对应的元素
3.在对应元素的对应约束后边添加约束优先级(以Warnng_2中的警告为例)直接统一设置成
make.width.equalTo(1).priority(.low)
4.添加完所有的约束优先级之后运行项目,此时你会发现,控制台警告没了,舒服了。随之而来的是UI可能会出现错乱的情况,只需要非正常的UI控制优先级设置成如下即可:
make.width.equalTo(1).priority(.high)
笔者未对其他情况进行试验,若你遇到了其他情况下的问题欢迎留言!!!
网友评论