gpt4 book ai didi

swift - NSSelectorFromString 和选择器结构

转载 作者:行者123 更新时间:2023-11-30 11:20:09 30 4
gpt4 key购买 nike

我有一个问题 NSSelectorFromString 和 Selector 之间有什么不同 如果我使用选择器创建选择器

 let bSelector = Selector("registerRemoteNotificationWithApplication:")
let cSelector = Selector(stringLiteral: "registerRemoteNotificationWithApplication:")

我收到警告

String literal is not a valid Objective-C selector

以及使用 NSSelectorFromString 时

 let aSelector = NSSelectorFromString("registerRemoteNotificationWithApplication:")

没有警告

即使函数是使用/不使用 @objc 声明的

  @objc func registerRemoteNotification(application:UIApplication) {


}

最佳答案

从 Swift 3 开始,您应该使用 #selector() 来实现此目的。鉴于

class Foo: NSObject {
@objc func registerRemoteNotification(application:UIApplication) { }
}

你会使用

let selector = #selector(Foo.registerRemoteNotification(application:))

关于swift - NSSelectorFromString 和选择器结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51347002/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com