无法在swift中使用NSFontManager方法

时间:2014-08-23 20:47:26

标签: swift xcode6 nsfontmanager

在Xcode 6 Beta 6中,

我无法在Swift中使用任何NSFontManager方法。 例如:

var fontManager = NSFontManager.sharedFontManager()

fontManager.setAction("changeFont:")

我总是得到错误: NSFontManager没有名为setAction的成员

任何方法都会出现这种情况(例如setDelegatesetTarget

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

试试这个:

fontManager.action = Selector("changeFont:")

使用Swift中的属性语法设置属性。

在ObjC中,声明属性(如果不使用@property):

- (X) myProp { return ... }
- (void) setMyProp(X value) { ... }

在Swift中,属性声明看起来更像是C#:

var myProp : X { get { return ... } set { ... } }

所以你不能使用与ObjC中相同的方法名称显式调用setter(虽然我实际上不知道它将被编译成什么......)。