我使用自动布局而没有sb和xib.But但最近我有一些问题。代码自动布局问题?
我不明白,我应该用它来实现以下两种方法
- (void)addConstraint:(NSLayoutConstraint *)constraint
- (void)addConstraints:(NSArray<__kindof NSLayoutConstraint *> *)constraints
例如,我有一个超级视图以下哪种说法:
_menuView = [[UIScrollView alloc] init];
_menuView.translatesAutoresizingMaskIntoConstraints = NO;
[self.view addSubview:_menuView];
[self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|-0-[_menuView]-0-|" options:0 metrics:nil views:NSDictionaryOfVariableBindings(_menuView)]];
[self.view addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|-0-[_menuView(40)]" options:0 metrics:nil views:NSDictionaryOfVariableBindings(_menuView)]];
和两个子视图:厂景,view2。当我使用自动布局来添加约束来描述view1和view2时,
[WHICHVIEW addConstraint:<#(nonnull NSLayoutConstraint *)#>];
或 [WHICHVIEW addConstraints:<#(nonnull NSArray < __kindof NSLayoutConstraint *> *)#>];
WHICHVIEW应该是什么? 让我换个角度来看,WHICHVIEW依赖于view1和view2之间的关系吗?如果view1和view2不是同一个层次结构呢?
只要@rayesquire的目标是iOS 8及以上,我同意。如果不是,则必须使用addConstraint(s),并且所有视图的父视图都是要添加的视图。 –
@MattHorst同意。 – matt