iOS开发之 -- NSStringFromSelector的使用

很多时候,我们要触发一个时间,需要设置点击时间,当然了,有很多,比如:按钮,手势,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来查找方法,由于整数的查找比匹配字符串快得多,所以这样可以在某种程序上提高执行的效率

原文地址:https://www.cnblogs.com/hero11223/p/6323464.html