相关疑难解决方法(0)

performSelector可能导致泄漏,因为其选择器未知

ARC编译器收到以下警告:

"performSelector may cause a leak because its selector is unknown".
Run Code Online (Sandbox Code Playgroud)

这是我正在做的事情:

[_controller performSelector:NSSelectorFromString(@"someMethod")];
Run Code Online (Sandbox Code Playgroud)

为什么我会收到此警告?我理解编译器无法检查选择器是否存在,但为什么会导致泄漏?我怎样才能更改我的代码,以便我不再收到此警告?

memory-leaks objective-c ios automatic-ref-counting

1251
推荐指数
15
解决办法
18万
查看次数

替代Swift中的performSelector?

Swift中没有这类performSelector方法.那么如何在一个对象上调用一个方法,在运行时选择要调用的方法,而在编译时不知道?显然在Swift中也没有.@objcNSInvocation

我知道在Swift中,你可以向类型发送任何方法(@objc方法声明可见)AnyObject,类似于idObjective-C.但是,这仍然需要您在编译时对方法名称进行硬编码.有没有办法在运行时动态选择它?

performselector swift

46
推荐指数
7
解决办法
5万
查看次数