Obj*_*ift 10 swift osx-yosemite
我看到imageNamed从可用选项中被弃用(或删除)当我执行以下操作时:
var statusImage:NSImage? = nil
self.statusImage = NSImage .ImageNamed....
Run Code Online (Sandbox Code Playgroud)

我已经尝试过苹果公司和其他公司提供的Swift文档.这看起来非常简单但无法找到imageNamed的解决方案.我错过了什么吗?
ric*_*ter 25
请init(named: String!)改用:称之为NSImage(named: "foo").
编译器自动重新映射被称为便捷构造函数的ObjC类方法,以用作Swift初始化器.如果类方法遵循便利构造函数(例如+[SomeThing thingWithFoo: bar:])的命名约定,则Swift将其重新映射到初始化器(例如,调用SomeThing(foo: aFoo, bar: aBar)).这也适用于Apple认为像方便构造函数一样工作的一些方法(如同的情况imageNamed:).
在大多数情况下,如果您完成对方便构造函数的类方法样式调用的输入,编译器将给出一个错误,告诉您如何重新映射它:
error: 'imageNamed' is unavailable: use object construction 'NSImage(named:)'
Run Code Online (Sandbox Code Playgroud)
更一般地说,您可以通过NSImage在编辑器中单击该符号(例如)来查看Xcode中API符号的自动生成模块"标题" ,或者查看Xcode的文档查看器或该API的在线参考文档,以查找使用它的Swift语法.
| 归档时间: |
|
| 查看次数: |
6149 次 |
| 最近记录: |