#import "twoViewController.h"
#import "Masonry.h"
@interface twoViewController ()
@end
@implementation twoViewController
/**
* 案例
要求:
无论在什么尺寸的设备上(包括横竖屏切换),黑色view的左、上边距、大小都不变;
灰色view的右边距不变
宽、高、上边距黑色view相等
*/
- (void)viewDidLoad {
[super viewDidLoad];
UIView *blackView = [UIView new];
blackView.backgroundColor = [UIColor blackColor];
[self.view addSubview:blackView];
// 防止block中的循环调用
__weak typeof(self) weakSelf = self;
// 给黑色view添加约束
[blackView mas_makeConstraints:^(MASConstraintMaker *make) {
// 添加大小约束
make.size.mas_equalTo(CGSizeMake(100, 200));
// 添加左、上边距约束
make.left.and.top.mas_equalTo(weakSelf).with.offset(20);
}];
// 初始化绿色view
UIView *greenView = [UIView new];
greenView.backgroundColor = [UIColor greenColor];
[self.view addSubview:greenView];
// 给绿色view添加约束
[greenView mas_makeConstraints:^(MASConstraintMaker *make) {
// 大小和上边距约束与黑色view相同
make.size.and.top.equalTo(blackView);
// 添加右边距约束
make.right.mas_equalTo(weakSelf).with.offset(-20);
}];
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
}
@end