Swift 动态选择器调用(旧的 performSelector :)

标签 swift selector

我正在将我在 Obj-C 中的项目移植到 Swift 中,但我被困在这个方法中:

textView: NSTextView, doCommandBySelector commandSelector: Selector) -> BOOL

在我之前的目标代码中

[textView performSelector:commandSelector withObject:nil];

但在 Swift 中我不知道解决方案,如何实际编写代码行。

谁有解决办法?

上周我真的快要疯了,即使在阅读了大量文档之后也是如此。

谢谢

最佳答案

即使在 Objective-C 中,您也必须为此使用方法 -[UIApplication sendAction:to:from:forEvent:] 所以在 Swift 中尝试这样的事情:

UIApplication.sharedApplication()
    .sendAction(commandSelector, to: textView, from: self, forEvent: nil)

有关 Apple Dev Forums 的更多信息.

关于Swift 动态选择器调用(旧的 performSelector :),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28823712/

相关文章:

javascript - jquery多选,如何从函数而不是更改事件中获取值

ios - *** 由于未捕获的异常 'NSInvalidArgumentException' 终止应用程序,

ios - Swift - 收到推送后设置 TabBarBadge

ios - 如何在数据加载之前延迟解析这些所需的变量?

ios - UIPickerView 中 UIVIew 的背景颜色设置不正确

javascript - 根据类别更改下拉列表以匹配单击的链接

javascript - 我们如何在 javascript 中编写这个 $(this).parent ('p' )

ios - Swift:如何更改 Eureka 表单单元格的边框颜色?

ios - 如何在完成数据获取后在 tableView 中使用 UIActivityIndi​​catorView

iOS - 在哪个线程 ios 选择器运行