怎样把SEL放进NSArray里

王朝学院·作者佚名  2016-08-27
窄屏简体版  字體: 小  |  中  |  大  |  超大  

我的技术博客经常被流氓网站恶意爬取转载。请移步原文:http://www.cnblogs.com/hamhog/p/3805270.html,享受整齐的排版、有效的链接、正确的代码缩进、更好的阅读体验。

有的时候我们会需要把SEL放在NSArray、NSDictionary等集合类型里,比如开新线程执行某函数,传多个参数的时候。但是SEL是不能直接作为NSArray成员的。

可以将它转化为NSString,然后再转化回来。假设SEL名为callback。

转化为NSString:

NSString*string= NSStringFromSelector(callback)

从NSString转化回来:

SEL callback = NSSelectorFromString(string);

一个简单的例子如下:

NSArray*params= [NSArray arrayWithObjects:target, NSStringFromSelector(callback), nil];

SEL callback = NSSelectorFromString(params[1]);

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航