Swift 点击按钮后,标签在左上角向上
我已经为标签设置了自动布局,所以它应该在我的按钮上方居中,但是当我单击按钮时,标签会在左角向上。我是一个全新的编码初学者,所以我可能只是错过了一些非常简单的东西?我想在我的代码中,我需要某种方式来告诉标签在点击后的位置 这是我的按钮操作代码:Swift 点击按钮后,标签在左上角向上,swift,autolayout,Swift,Autolayout,我已经为标签设置了自动布局,所以它应该在我的按钮上方居中,但是当我单击按钮时,标签会在左角向上。我是一个全新的编码初学者,所以我可能只是错过了一些非常简单的东西?我想在我的代码中,我需要某种方式来告诉标签在点击后的位置 这是我的按钮操作代码: nextStagetwo.textAlignment = NSTextAlignment.Center nextStagetwo.userInteractionEnabled = true nextStage
nextStagetwo.textAlignment = NSTextAlignment.Center
nextStagetwo.userInteractionEnabled = true
nextStagetwo.text = "Go to next stage"
self.view.addSubview(nextStagetwo)
let gestureRecognizer = UITapGestureRecognizer(target: self, action: "handleTap:")
nextStagetwo.addGestureRecognizer(gestureRecognizer)
}
}
func handleTap(gestureRecognizer: UIGestureRecognizer) {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let vc: AnyObject! = storyboard.instantiateViewControllerWithIdentifier("stagethree")
self.presentViewController(vc as! UIViewController, animated: true, completion: nil)
}
在Xcode 7中运行应用程序,选择调试器视图,然后选择带有工具提示“调试视图层次结构”的调试器工具栏按钮(调试器工具栏右侧的第三个按钮)。这将显示屏幕上每个项目的自动布局。在此视图中,可以根据需要剥离层。将这些值与该项及其容器的自动布局约束进行比较
另外,请确保您的故事板在Xcode界面生成器中没有任何自动布局警告。我将此添加到代码中,这是我的代码中缺少的:
let nextStagetwo = UILabel(frame: CGRectMake(250, 250, 250, 250))
nextStagetwo.center = CGPointMake(210, 200)
谢谢你的回复!我已经按照你说的做了,我还可以看到它在左角的样子,我可以看到它在这个调试器视图中没有任何约束,但是在普通视图中它显示为有约束?我试图删除它们并添加新的,但它仍然在左角?这个调试器视图中有什么我可以更改的吗?您说过在调试器视图中它没有任何约束,但在普通视图中它有约束。我不知道发生了什么事。在“调试器”视图中,如果选择“大小检查器”,则应显示任何选定视图上的所有约束,然后将不影响布局的约束灰显。因此,您应该看到与在普通故事板编辑器中相同的约束。这表明它没有约束,但我的理论是,这是因为我在它不“活动”时对它施加了约束。我所说的“活动”是指在你点击我的按钮之前,我已经设置了它的布局,但是在点击我的按钮之后,没有任何限制。我认为这就是问题所在。但是,我不知道如何在单击后为标签设置约束?我猜这必须在swift文件中手动编码,而不是在xcode接口中?