ios - masonry第三方库使用自动布局(参考:http://www.cocoachina.com/ios/20141219/10702.html)
#import "ViewController.h" #import "Masonry.h" #define kWeakSelf(weakSelf) __weak typeof(self)weakSelf = self #define WS(weakSelf) __weak __typeof(&*self)weakSelf = self; @interface ViewController () { UIView *topView; } @end @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; kWeakSelf(ws); /**底部灰色view*/ topView = [[UIView alloc]init]; topView.backgroundColor = [UIColor lightGrayColor]; [ws.view addSubview:topView]; [topView mas_makeConstraints:^(MASConstraintMaker *make) { make.center.equalTo(ws.view); make.size.mas_equalTo(CGSizeMake(300, 300)); }]; /**表面红色view*/ UIView *redView= [[UIView alloc]init]; redView.backgroundColor = [UIColor redColor]; [topView addSubview:redView]; [redView mas_makeConstraints:^(MASConstraintMaker *make) { make.edges.equalTo(topView).with.insets(UIEdgeInsetsMake(10, 10, 10, 10)); }]; /** 创建三个等宽等高等间距view */ /**左边view*/ UIView *leftView = [[UIView alloc]init]; leftView.backgroundColor = [UIColor blueColor]; [redView addSubview:leftView]; /**右边view*/ UIView *rightView = [[UIView alloc]init]; rightView.backgroundColor = [UIColor brownColor]; [redView addSubview:rightView]; /**最有边view*/ UIView *lastView = [[UIView alloc]init]; lastView.backgroundColor = [UIColor yellowColor]; [redView addSubview:lastView]; CGFloat padding = 10.f; //左边view添加约束 [leftView mas_makeConstraints:^(MASConstraintMaker *make) { make.centerY.mas_equalTo(redView.mas_centerY); make.left.equalTo(redView.mas_left).with.offset(padding); make.right.equalTo(rightView.mas_left).with.offset(-padding); make.height.mas_equalTo(@150); make.width.equalTo(rightView); }]; //右边view添加约束 [rightView mas_makeConstraints:^(MASConstraintMaker *make) { make.centerY.mas_equalTo(redView.mas_centerY); make.left.equalTo(leftView.mas_right).with.offset(padding); make.right.equalTo(lastView.mas_left).with.offset(-padding); make.height.mas_equalTo(@150); make.width.equalTo(lastView); }]; //最右边view添加约束 [lastView mas_makeConstraints:^(MASConstraintMaker *make) { make.centerY.mas_equalTo(redView.mas_centerY); make.left.equalTo(rightView.mas_right).with.offset(padding); make.right.equalTo(redView.mas_right).with.offset(-padding); make.width.equalTo(rightView); make.height.mas_equalTo(@150); }]; } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; } @end
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。