Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 点击按钮后,标签在左上角向上_Swift_Autolayout - Fatal编程技术网

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接口中?