在Swift中将函数调用为字符串

时间:2018-01-19 10:56:22

标签: ios swift function

我正在尝试使用NSSelectorFromString从另一个视图控制器调用一个函数。我试过这个:

MainScreenViewController().perform(NSSelectorFromString("function"))

但应用程序崩溃了。提前谢谢。

1 个答案:

答案 0 :(得分:2)

您应该向函数添加@objc推理,否则您的函数将无法在Objective-C中表达,这是NSSelectorFromString使用的。

@objc func function() {
    [...]
}

详细了解Swift 4 here中有限的@objc推理。