当前位置 : 主页 > 手机开发 > ios >

iOS 约束冲突怎么解决

来源:互联网 收集:自由互联 发布时间:2021-05-10
iOS约束冲突一般分为两类:边距约束冲突或者尺寸冲突,通常可通过修改其中一方控件的约束优先级,这就使用到了content Hugging/content Compression Resistance,而使用的前提需要确定其控件大小

iOS约束冲突一般分为两类:边距约束冲突或者尺寸冲突,通常可通过修改其中一方控件的约束优先级,这就使用到了content Hugging/content Compression Resistance,而使用的前提需要确定其控件大小,一般在autolayout成功约束后使用.

设置最大优先级,只要将该控件优先级设置的比另外一个高,就可以确保在发生约束冲突时改变另一个约束.

- (void)setContentHuggingPriority:(UILayoutPriority)priority forAxis:(UILayoutConstraintAxis)axis NS_AVAILABLE_IOS(6_0);

同样的,就是可以设置控件最小优先级了

- (void)setContentCompressionResistancePriority:(UILayoutPriority)priority forAxis:(UILayoutConstraintAxis)axis NS_AVAILABLE_IOS(6_0);

* Intrinsic Content Size:固有大小,像UIView之类控件都有自身固有大小.

另附:

// 否则在6/6plus上不准确 
self.label.preferredMaxLayoutWidth = SCREEN_WIDTH - 40;

以上所述是小编给大家介绍的iOS 约束冲突的解决方案,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对自由互联网站的支持!

网友评论