Masonry 布局 两个控件自适应宽度

Masonry 布局  

当两个并排的控件都需要自适应宽度时,设置拉伸优先级,和压缩优先级

UILabel*label = [[UILabelalloc] init]; label.text =@"发都发搜房送"; label.textColor =ColorFromHex(@"000000"); label.font = FONT_SYSTEM(15); label.backgroundColor = ColorFromHex(@"912932"); [self.view addSubview:label]; [label mas_makeConstraints:^(MASConstraintMaker *make) { make.top.equalTo(self.view.mas_top).with.offset(100); make.left.equalTo(self.view.mas_left).with.offset(12); make.bottom.equalTo(self.view.mas_bottom).with.offset(-1); }];UITextField* inputTfield = [[UITextFieldalloc] init]; inputTfield.backgroundColor = ColorFromHex(@"109218"); [self.view addSubview:inputTfield]; [inputTfield mas_makeConstraints:^(MASConstraintMaker *make) { make.top.equalTo(self.view.mas_top).with.offset(100); make.left.equalTo(label.mas_right).with.offset(10); make.right.equalTo(self.view.mas_right).with.offset(-12); make.bottom.equalTo(self.view.mas_bottom).with.offset(-1); }];


控件显示效果:

设置拉伸优先级代码:

[label setContentHuggingPriority:UILayoutPriorityRequiredforAxis:UILayoutConstraintAxisHorizontal]; [inputTfield setContentHuggingPriority:UILayoutPriorityDefaultLowforAxis:UILayoutConstraintAxisHorizontal];// 参数可以直接在苹果说明文档去查看

设置后显示效果:


设置压缩优先级的代码如下:

[label setContentCompressionResistancePriority:UILayoutPriorityDefaultLowforAxis:UILayoutConstraintAxisHorizontal]; [inputTfield setContentCompressionResistancePriority:UILayoutPriorityRequiredforAxis:UILayoutConstraintAxisHorizontal];

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容