【发布时间】:2015-03-11 11:43:14
【问题描述】:
我正在使用layer-backed NSView 创建一个 Cocoa 应用程序。我已将支持视图的层自定义为 CATextlayer 类型,因为此视图的主要目的是显示一些文本。
我在init 过程中包含以下行,它不适用于我尝试过的任何 contentsGravity 常量:
textLayer.contentsGravity = kCAGravityBottomRight
另一方面,以下确实生效:
textLayer.alignmentMode = kCAAlignmentRight
所以基本的水平对齐是有效的,但我无法在垂直空间中调整。
在CATextLayer 中指定文本位置的最佳方法是什么? 我也一直在尝试修改支持属性字符串中的NSParagraphStyle 属性,但这也没有似乎无法定位文本?
我们将不胜感激。
===
注意:CATextLayer 不是支持我的NSView 的层的子层。它是支持我观点的图层类型。我通过在我的自定义NSView 中覆盖 makeBackingLayer() 来实现这一点,如下所示:
override func makeBackingLayer() -> CALayer {
return CATextLayer()
}
我把它包括在内,以防它在某种程度上相关。
【问题讨论】:
标签: objective-c cocoa core-animation calayer nsview