【发布时间】:2015-03-03 03:42:34
【问题描述】:
我正在将我在 Obj-C 中的项目移植到 Swift 中,但我被困在我拥有的这种方法中:
textView: NSTextView, doCommandBySelector commandSelector: Selector) -> BOOL
在我之前的 objc 代码中
[textView performSelector:commandSelector withObject:nil];
但在 Swift 中,我不知道解决方案,如何实际编写代码行。
谁有解决办法?
上周我真的快疯了,即使在阅读了大量文档之后。
谢谢
【问题讨论】:
-
Swift 认为选择器本质上是不安全的,据我所知不支持旧的“performSelector”。 Swift 中有一个 Selector 类型,但它的用途是有限的。看看堆栈溢出,你会看到一些关于使用计时器作为解决方法的讨论。
-
我已经查看了堆栈溢出的解决方案,但我真的不明白如何在 Swift 中编写那行代码。你知道怎么可能吗?
-
我也试过计时器,它可以工作,但是当我按下删除键来更正/删除时,它违反了“完成:”方法。