swift - 如何以编程方式在 Swift 中垂直居中标签?

标签 swift xcode6 osx-yosemite

我的标签有问题。我不太确定如何垂直居中这个标签:

let textRect = NSMakeRect(newX, newY , 400, 400)

let textTextContent = NSString(string: "label")
let textStyle = NSMutableParagraphStyle.defaultParagraphStyle().mutableCopy() as NSMutableParagraphStyle
textStyle.alignment = NSTextAlignment.CenterTextAlignment

水平方向很容易,但垂直方向我找不到方法。

最佳答案

我猜想没有alignment类型的属性。您可以使用容器 View 并限制标签居中。

enter image description here

您可以通过编程方式添加约束:

containerView.addConstraints([
    NSLayoutConstraint(item: containerView, attribute: .CenterX, relatedBy: .Equal, toItem: labelView, attribute: .CenterX, multiplier: 1.0, constant: 0.0),
    NSLayoutConstraint(item: containerView, attribute: .CenterY, relatedBy: .Equal, toItem: labelView, attribute: .CenterY, multiplier: 1.0, constant: 0.0)
])

关于swift - 如何以编程方式在 Swift 中垂直居中标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26422629/

相关文章:

ios - 如何使用分段控件更改容器 View

ios - 如何使用 csv 文件有效地初始化 iOS/Core Data 应用程序中的数据?

css - 元素有时会隐藏而不是再次出现

ios - PackageApplication 今天停止使用 OS X 10.10 (Yosemite)

macos - Mac OS-X 上的颜色选择器选择了错误的颜色

iOS:MaterialComponents 阴影

ios - swift 原生支持 C 语言吗?

objective-c - 自定义 UIActivity : Unknown activity items supplied in ios8

swift - 将多个调用链接到同一方法时出现编译器问题

ios - 不断更新用户当前位置是个好主意吗?