objective-c - 具有 2 个以上对象的 performSelector

标签 objective-c

有没有办法调用[anObject performSelector];有超过 2 个对象?我知道你可以使用一个数组来传递多个参数,但我想知道是否有一种较低级别的方法来调用我已经用超过 2 个参数定义的函数,而不使用带有 nsarray 参数的辅助函数。

最佳答案

或者 (1) 使用 NSInvocation或者 (2) 直接使用 objc_msgSend

objc_msgSend(target, @selector(action:::), arg1, arg2, arg3);

(注意:确保所有参数都是id,否则参数可能无法正确发送。)

关于objective-c - 具有 2 个以上对象的 performSelector,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2346733/

相关文章:

ios - Guard Malloc 导致 wacko 应用程序行为

iphone - 状态栏未按预期在 iPad 上呈现

ios - InputAccessoryView 覆盖底栏

objective-c - Cocoa 应用程序的语法着色

ios - 设置一个 plist 来存储 iPhone 游戏的应用程序数据(不是设置)

ios - 检测主题标签,包括主题标签中的 &

iOS - 方法正在处理时禁用行选择

objective-c - 为什么我不能分配/初始化 - 得到 "Assigning retained object to unsafe property"警告?

iphone - 读取数组

ios - 如何在 iOS 中为 TableView 和 ScrollView 设置偏移量,以便两者一起滚动