【发布时间】:2015-10-21 03:46:04
【问题描述】:
我在 Swift 中有一个类的共享实例,我在 Objective-C 中使用它。我无法创建共享实例并使用实例函数。这是我的 Swift 代码。
class VideoPlayerSignaler: NSObject {
static let sharedInstance = VideoPlayerSignaler()
let playerAction = Signal<PlayerAction>()
private override init() {
}
func firePlayerAction(action: PlayerAction) {
playerAction.fire(action)
}
}
这是我的 Objective-C 代码。
VideoPlayerSignaler *signaler = [VideoPlayerSignaler sharedInstance];
// This is the line that is producing the issue.
// It's as if the signaler variable is a Class Instance
[signaler firePlayerAction: PlayerAction.Stop];
我产生的错误表明 firePlayerAction 不存在。本质上,Objective C 认为signaler 变量是一个类实例。
我做错了什么以及如何解决它以使signaler 成为VideoPlayerSignaler 的共享实例?
【问题讨论】:
-
如果您发布信号类的代码以及 Objective-C 中的 firstPlayerAction,我可能会提供帮助。
-
它会产生什么问题?
-
我可以给你图书馆的代码。
https://github.com/artman/Signals -
其实这里的signaler真的是一个“类实例”
-
我就是这么想的。 XCode 无法识别函数或实例变量。
标签: ios objective-c swift