美文网首页
UIWebView中调用其他页面的方法

UIWebView中调用其他页面的方法

作者: LetBe | 来源:发表于2018-08-15 10:35 被阅读0次

1、调用 performSelector:withObject;
根据约定的url,进行截取字符串,再次转换成selector,然后指直接调用
performSelector:withObject;
适用于参数比较少,没有返回值,较为简单的存在

2、调用NSInvocation

创建一个MethodSignature,签名中保存了方法的名称,参数和返回值
由方法的所有者 来调用该方法 就比如这个viewController,里面的方法就是 run:eat:

NSMethodSignature *signature = [ViewController instanceMethodSignatureForSelector:@selector(run:andEat:)];

通过MethodSignature来创建一个NSInvocation
NSInvocation中保存了方法所属于的对象|方法名称|参数|返回值等等

NSInvocation *invocation = [NSInvocation invocationWithMethodSignature:signature];
invocation.target = self;
invocation.selector = @selector(run:andEat:);
NSString *run = @"1000米";
NSString *eat = @"家常菜";
[invocation setArgument:&run atIndex:2];
[invocation setArgument:&eat atIndex:3];
[invocation invoke];

//自定义参数索引是从2开始的 而且名称要一一对应

相关文章

网友评论

      本文标题:UIWebView中调用其他页面的方法

      本文链接:https://www.haomeiwen.com/subject/jjpibftx.html