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
Ios 如何在XCode 6中对齐标签垂直中心_Ios_Swift_Xcode6 - Fatal编程技术网

Ios 如何在XCode 6中对齐标签垂直中心

Ios 如何在XCode 6中对齐标签垂直中心,ios,swift,xcode6,Ios,Swift,Xcode6,每当我向UILabel的高度和宽度添加约束时,文本将跳转到控制器的顶部 如何在ViewController中使UILabel垂直居中? 单击IB底部工具栏上的对齐按钮,然后选择水平或垂直中心。首先,如果要保留大小,可能还需要固定宽度和高度 有关发生这种情况的原因的解释: 每当您在interface builder中向视图添加约束时,您都在告诉IB您想要选择自动布局,现在您必须完全控制布局。在superview顶部看到标签的原因是,您没有添加任何约束来确定标签在superview中的位置。请参见

每当我向UILabel的高度和宽度添加约束时,文本将跳转到控制器的顶部

如何在ViewController中使UILabel垂直居中?


单击IB底部工具栏上的对齐按钮,然后选择水平或垂直中心。首先,如果要保留大小,可能还需要固定宽度和高度


有关发生这种情况的原因的解释:


每当您在interface builder中向视图添加约束时,您都在告诉IB您想要选择自动布局,现在您必须完全控制布局。在superview顶部看到标签的原因是,您没有添加任何约束来确定标签在superview中的位置。请参见mohacs关于如何添加约束的回答

如果有人仍然需要,下面是您可以通过编程实现的方法

let centerCoordinate = self.view.frame.maxY - (self.view.frame.maxY/2.0)
label.frame = CGRectMake(centerCoordinate,
100, 50, 50)

这确实澄清了为什么会发生这种情况,并且非常有用,谢谢。问题是关于垂直对齐,而不是水平对齐