如何在运行时设置自适应布局?
我正在使用具有多个视图的自适应布局开发iOS应用。我想在弹出键盘时更改视图位置。
我正在使用以下自动布局编码,但它无法正常工作。
NSArray *constraint_POS_V = [NSLayoutConstraint constraintsWithVisualFormat:@"V:|-vSpacing-[redView]-vSpacing-|" options:NSLayoutFormatDirectionLeadingToTrailing
metrics:metrics
views:viewsDictionary];
NSArray *constraint_POS_H = [NSLayoutConstraint constraintsWithVisualFormat:@"H:|-hSpacing-[redView]-hSpacing-|"
options:NSLayoutFormatDirectionLeadingToTrailing
metrics:metrics
views:viewsDictionary];
[self.view addConstraints:constraint_POS_V];
[self.view addConstraints:constraint_POS_H];
答案 0 :(得分:0)
您必须在运行时为约束设置常量值。为视图选择顶部布局约束(viewTopLayoutConstraint)的插座。
- (void) keyboardWillShow:(NSNotification *) notification
{
[UIView animateWithDuration:0.3 animations:^
{
_viewTopLayoutConstraint.constant = -100;
[self.view layoutIfNeeded];
}];
}