博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
转:EasyJSWebView
阅读量:5297 次
发布时间:2019-06-14

本文共 1050 字,大约阅读时间需要 3 分钟。

EasyJSWebView 是类似 Android  javascriptInterface 的 uiwebview js 调用原生代码框架

 

示例代码:

先建一个MyJSInterface接口

@interface MyJSInterface : NSObject - (void) test;- (void) testWithParam: (NSString*) param;- (void) testWithTwoParam: (NSString*) param AndParam2: (NSString*) param2;- (NSString*) testWithRet; @end

然后把MyJSInterface 添加到 UIWebView.

MyJSInterface* interface = [MyJSInterface new];[self.myWebView addJavascriptInterfaces:interface WithName:@"MyJSTest"];[interface release];

在Javascript中, 你可以使用如下代码调用 Objective-C 方法.

MyJSTest.test();MyJSTest.testWithParam("ha:ha");MyJSTest.testWithTwoParamAndParam2("haha1", "haha2"); var str = MyJSTest.testWithRet();

你也可以通过回调获取到方法执行结果

Objective-C 代码如下:

- (void) testWithFuncParam: (EasyJSDataFunction*) param{   NSLog(@"test with func");   NSString* ret = [param executeWithParam:@"blabla:\"bla"];   NSLog(@"Return value from callback: %@", ret);}

js调用方法如下:

MyJSTest.testWithFuncParam(function (data){   alert(data); //data would be blabla:"bla return "some data";});

 

转载于:https://www.cnblogs.com/guoxiaoqian/p/4784276.html

你可能感兴趣的文章
图片缩略图
查看>>
EasyUI+bootsrtap混合前端框架
查看>>
高可用,多路冗余GFS2集群文件系统搭建详解
查看>>
HDU 3920 Clear All of Them I(DP + 状态压缩 + 贪心)
查看>>
vue 集成 axios 发送post请求 payload导致后台无法接收到数据问题
查看>>
python中csv文件的读写
查看>>
面向对象的封装性
查看>>
windows7下为PHP5.3安装Memcached
查看>>
修改PHP上传文件大小限制
查看>>
IO流入门-第十三章-File相关
查看>>
PSAM 卡的应用 操作方法
查看>>
String、StringBuilder、StringBuffer的爱恨情仇
查看>>
Object常用方法总结
查看>>
mplayer-ww -37877 build by gcc-4.5.1
查看>>
小Z的袜子(hose) HYSBZ - 2038(莫队)
查看>>
区间完全覆盖问题(贪心)
查看>>
Java8 lambda表达式10个示例<转>
查看>>
转: codereview工具之 review board 选型与实践
查看>>
转:一位同学总结的面试笔记题相关
查看>>
【转】Google是如何做代码审查的?
查看>>