美文网首页
记一次JS与OC的交互

记一次JS与OC的交互

作者: zym_ | 来源:发表于2017-07-04 10:36 被阅读13次

    首先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。

    相关文章

      网友评论

          本文标题:记一次JS与OC的交互

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