【发布时间】:2019-08-08 14:48:12
【问题描述】:
我在viewDidLoad 中使用它设置了容器的顶部约束:
[[NSLayoutConstraint constraintWithItem:_container attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeTop multiplier:1 constant: 0.00]setActive:true];
但是我想在按钮出现时更改这些约束,这就是那个功能
-(void)didConnect{
[[self connectToKestrelButton] setHidden:NO];
[[self cancelButton] setHidden:YES];
[[NSLayoutConstraint constraintWithItem:_container attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeTop multiplier:1 constant: 60.00]setActive:true];
}
但是当这个函数被调用时,约束更新
-(void)didDisconnect{
[[self connectToKestrelButton] setHidden:YES];
[[self cancelButton] setHidden:YES];
[[NSLayoutConstraint constraintWithItem:_container attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:self.view attribute:NSLayoutAttributeTop multiplier:1 constant: 0.00]setActive:true];
}
问题是调用该函数时容器顶部约束没有改变,出了什么问题?
【问题讨论】:
-
您是否正在通过代码创建
_container和两个按钮?或者你有没有在 IB/Storyboard 中列出它们(并给予它们约束)? -
我在故事板中给了他们约束
标签: ios objective-c xcode constraints