在Xcode 6 Beta 6中,
我无法在Swift中使用任何NSFontManager
方法。
例如:
var fontManager = NSFontManager.sharedFontManager()
fontManager.setAction("changeFont:")
我总是得到错误: NSFontManager没有名为setAction的成员
任何方法都会出现这种情况(例如setDelegate
,setTarget
)
感谢您的帮助。
答案 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(虽然我实际上不知道它将被编译成什么......)。