欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

iOS 约束冲突怎么解决

程序员文章站 2024-02-17 09:48:58
ios约束冲突一般分为两类:边距约束冲突或者尺寸冲突,通常可通过修改其中一方控件的约束优先级,这就使用到了content hugging/content compressi...

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 约束冲突的解决方案,希望对大家有所帮助