#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
// 在界面上有一个蓝色的View,它距离父控件的上 左 右 各是20,
// 蓝色view的高是 100
// 在蓝色View的下方有一个红色的view,红色view距离蓝色view的间距是50
// 红色view与蓝色view的右侧对齐
// 红色view与蓝色view的高度相同
// 红色view的宽度是蓝色view宽度的一半
- (void)viewDidLoad {
[super viewDidLoad];
UIView *blueView = [[UIView alloc]init];
blueView.backgroundColor = [UIColor blueColor];
[self.view addSubview:blueView];
UIView *redView = [[UIView alloc]init];
redView.backgroundColor = [UIColor redColor];
[self.view addSubview:redView];
#pragma mark -- VFL语言
//1. 取消autoresizing
blueView.translatesAutoresizingMaskIntoConstraints = NO;
redView.translatesAutoresizingMaskIntoConstraints = NO;
// VisualFormat VFL语言的字符串
// options 对其的方式
// metrics 度量
// views 代表VFL字符串中控件具体对应的是哪个控件
NSArray *viewH = [NSLayoutConstraint constraintsWithVisualFormat:@"H:|-20-[blueView]-20-|" options:NSLayoutFormatAlignAllBottom metrics:nil views:@{@"blueView":blueView}];
[self.view addConstraints:viewH];
NSArray *viewV = [NSLayoutConstraint constraintsWithVisualFormat:@"V:|-20-[blueView(100)]-50-[redView(==blueView)]" options:NSLayoutFormatAlignAllRight metrics:nil views:@{@"blueView":blueView,@"redView":redView}];
[self.view addConstraints:viewV];
#pragma mark -- 红色的宽度是蓝色的一半 ,VFL中没有办法去计算一半的概念
NSLayoutConstraint *redWidth = [NSLayoutConstraint constraintWithItem:redView attribute:NSLayoutAttributeWidth relatedBy:NSLayoutRelationEqual toItem:blueView attribute:NSLayoutAttributeWidth multiplier:0.5 constant:0];
[self.view addConstraint:redWidth];
}
@end