我不明白为什么会这样编译:

let viewWillAppearSelector = #selector(UIViewController.viewWillAppear(_:))

但这不是:
let viewDidLoadSelector = #selector(UIViewController.viewDidLoad())

错误是



为什么后者不服从,而前者却服从?

更新:我将其更改为此,现在可以编译:
let viewDidLoadSelector = #selector(UIViewController.viewDidLoad)

但我不是100%为什么会这样

最佳答案

如果方法不带任何参数,则需要省略括号。在以后的Swift版本中,您的代码将成为错误。

尝试

let viewDidLoadSelector = #selector(UIViewController.viewDidLoad)

反而。

关于ios - 可以为viewWillAppear创建选择器,但不能为viewDidLoad创建选择器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37035457/

10-10 20:29