说实话我花了不少时间才真正理解setContentCompressionResistancePriority和setContentHuggingPriority的用法。
[label1 setContentCompressionResistancePriority:758 forAxis:(UILayoutConstraintAxisHorizontal)];
[label1 setContentHuggingPriority:300 forAxis:(UILayoutConstraintAxisHorizontal)];
setContentCompressionResistancePriority(抗压缩),这个值越低,就会在宽度不够的情况下,被压缩。常见的视图默认给的值是UILayoutPriorityDefaultHigh = 750。若是多个视图是默认值,会被系统认为更早被addSubview的视图该值更小!
setContentHuggingPriority(抗拉伸),这个值越低,就会在宽度多余的情况下,被拉伸。常见的视图默认给的值是UILayoutPriorityDefaultLow = 250。若是多个视图是默认值,会被系统认为更早被addSubview的值更小!
下面举个栗子验证下:
import "CompressionAndHuggingViewController.h"
#import <Masonry.h>
@interface CompressionAndHuggingViewController ()
@pro