Ios NSLayout约束以隐藏UIView
我正在尝试重新创建此约束,但我不知道如何连接此约束: 故事板中的Ios NSLayout约束以隐藏UIView,ios,swift,xcode,uiview,storyboard,Ios,Swift,Xcode,Uiview,Storyboard,我正在尝试重新创建此约束,但我不知道如何连接此约束: 故事板中的RootViewController有一个约束,其中未选中“已安装”复选框: 但看起来它与RootViewController的关系,即使它隐藏了第二个容器视图: 我已尝试在代码中使用@IBOutlet弱var hidecameracontaint:NSLayoutConstraint创建IBOutlet然后将连接拖动到情节提要中的RootViewController,但这不起作用 但我需要使用约束,因为在代码中,摄影机可见性是
RootViewController
有一个约束,其中未选中“已安装”复选框:
但看起来它与RootViewController
的关系,即使它隐藏了第二个容器视图:
我已尝试在代码中使用@IBOutlet弱var hidecameracontaint:NSLayoutConstraint创建IBOutlet
然后将连接拖动到情节提要中的RootViewController
,但这不起作用
但我需要使用约束,因为在代码中,摄影机可见性是用它设置的:
fileprivate func setCameraVisibility(_ visible: Bool) {
hideCameraConstraint.isActive = !visible
UIView.animate(withDuration: 0.5, delay: 0, usingSpringWithDamping: 1, initialSpringVelocity: 0, options: .beginFromCurrentState, animations: {
self.view.layoutIfNeeded()
}, completion: nil)
}
有什么想法吗?谢谢 你必须这样使用
hideCameraConstraint.constant += anyValue
在约束中,必须设置整数值而不是布尔值。必须这样使用
hideCameraConstraint.constant += anyValue
在约束中,必须设置整数值而不是布尔值。如果要隐藏和取消隐藏具有约束的视图,请使用以下方法:
height==0设置约束
addidentifierhideviewidentier
250
900
(在您的情况下,这将是底部布局或实际高度)250
之间的约束以显示视图,并更新990
以隐藏视图
//@update
- (void)upadteView:(UIView *)view hide:(BOOL)hide {
[view.constraints enumerateObjectsUsingBlock:^(__kindof NSLayoutConstraint * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if ([obj.identifier isEqual:@"hideViewIdentifier"]) {
obj.priority = (hide) ? 990 : 250;
*stop = YES;
return;
}
}];
}
如果要隐藏和取消隐藏具有约束的视图,请使用以下方法:
height==0设置约束
addidentifierhideviewidentier
250
900
(在您的情况下,这将是底部布局或实际高度)250
之间的约束以显示视图,并更新990
以隐藏视图
//@update
- (void)upadteView:(UIView *)view hide:(BOOL)hide {
[view.constraints enumerateObjectsUsingBlock:^(__kindof NSLayoutConstraint * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if ([obj.identifier isEqual:@"hideViewIdentifier"]) {
obj.priority = (hide) ? 990 : 250;
*stop = YES;
return;
}
}];
}
与其设置isActive,不如尝试修改常量属性?是否要隐藏和取消隐藏某些动作的视图?@carlos21我只是想弄清楚如何在情节提要上添加该约束。你知道怎么做吗?@Nazir是的,我想隐藏和取消隐藏相机视图。基本上可以显示或隐藏拍照功能。与其设置为“活动”,不如尝试修改“常量”属性?是否要隐藏和取消隐藏某些动作的视图?@carlos21我只是想弄清楚如何在情节提要上添加该约束。你知道怎么做吗?@Nazir是的,我想隐藏和取消隐藏相机视图。基本上能够显示或隐藏拍照的能力。感谢您的回复!但是,我如何在故事板中连接约束?@SRMR我给你举个例子,假设你在故事板中使用UIView并将其前导约束设置为50,那么你必须将这些约束附加到你创建的约束,即hideCameraConstraint。现在在程序中,您可以更改UIView的前导约束。示例-hideCameraConstraint.CONTANT=20,这意味着现在您的UIView从20开始,而不是从50开始,这样您就可以通过编程更改约束。如果你喜欢我的答案,请投票给我的答案。好的,我要找的是如何连接我在故事板中寻找的约束谢谢你的回复!但是,我如何在故事板中连接约束?@SRMR我给你举个例子,假设你在故事板中使用UIView并将其前导约束设置为50,那么你必须将这些约束附加到你创建的约束,即hideCameraConstraint。现在在程序中,您可以更改UIView的前导约束。示例-hideCameraConstraint.CONTANT=20,这意味着现在您的UIView从20开始,而不是从50开始,这样您就可以通过编程更改约束。如果你喜欢我的答案,请把我的答案投上去。好的,我正在寻找的是如何连接我在故事板中寻找的约束。这是我认为我正在寻找的东西,让我今天试试!我正在试图弄清楚如何手动拖动约束。拖动约束是什么意思?故事板上的“隐藏摄影机约束”我认为最好是开始聊天,因为这是主题,不利于进行长时间对话。这是我认为我正在寻找的类型,但今天让我尝试一下!我正在试图弄清楚如何手动拖动约束。拖动是什么意思?故事板上的“隐藏摄影机约束”我认为最好是开始聊天,因为这是主题,不利于进行长时间的对话