很多时候,我们要触发一个时间,需要设置点击时间,当然了,有很多,比如:按钮,手势,tableview和其他一些空间自带的点击方法,
还有一个就是NSStringFromSelector的使用,废话不多说,直接上代码:
1,声明一个字符串
static NSString *str;
2,创建触发事件
str = NSStringFromSelector(@selector(test));
3,实现方法
-(void)test { NSLog(@"点击了"); }
4,触发事件
- (IBAction)sinaClick:(id)sender {
[self performSelector:NSSelectorFromString(str)];
}
这样的机制增加了程序的灵活性,可以通过给一个方法传递sel参数,让这个方法动态的执行某一个方法,我们也可以通过配置文件制定需要执行的方法,程序读取配置文件之后把方法的字符串翻译成sel变量然后给相应的对象发送这个消息
从效率的角度上来说,执行的时候不是通过方法名字而是通过方法的ID来查找方法,由于整数的查找比匹配字符串快得多,所以这样可以在某种程序上提高执行的效率
iOS开发之 -- NSStringFromSelector的使用
原文:http://www.cnblogs.com/hero11223/p/6323464.html