记一次JS与OC的交互

首先JS要调用OC的方法,

这是JS给的方法名

/**

* title 分享标题

* img  分享图片地址

* link  分享链接

*/

game.wechatShare(title, img, link);

iOS端做的是在

- (void)webViewDidFinishLoad:(UIWebView *)webView;

这个方法中实现

//js oc 交互

JSContext *context = [webView valueForKeyPath:@"documentView.webView.mainFrame.javaScriptContext"];

context[@"game"] = self;

NSString *jsStr2 = @"game.weChatShare(title,img,link)";

[context evaluateScript:jsStr2];

定义协议

@protocol KnockExpor  <JSExport>

- (void)we:(NSString *)title Chat:(NSString *)img Share:(NSString *)link;

@end

此处方法名定义,有几个参数要把方法名拆分成几段,首字母需要大写(说多了都是泪),当然参数多的话可以让后台返回个字典.

实现协议方法

- (void)we:(NSString *)title Chat:(NSString *)img Share:(NSString *)link

{

MyLog(@"%@-%@-%@",title,img,link);

}

别忘了回到主线程刷新UI

END。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容