大家好,今天给各位分享深入解析WKWebView:高效iOS网页浏览技术解析的一些知识,其中也会对进行解释,文章篇幅可能偏长,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在就马上开始吧!
[self.userContentController addScriptMessageHandler:self name:@"showName"];//注册一个名为testClick的js方法
config.userContentController=self.userContentController;
self.wkWebView=[[WKWebView alloc] initWithFrame:CGRectMake(0, 200, 375, 200) 配置:config];
self.wkWebView.UIDelegate=self;
self.wkWebView.navigationDelegate=self;
[self.view addSubview:self.wkWebView];
[self.wkWebView loadRequest:[NSURLRequest requestWithURL:url]];(void)userContentController:(WKUserContentController *)userContentController didReceiveScriptMessage:(WKScriptMessage *)消息{
NSLog(@"%@",NSStringFromSelector(_cmd));
NSLog(@"%@",message.body);
if ([message.nameisEqualToString:@"showMobile"]) {
[self showMsg:@"下面我是小红,手机号码是:18870707070"];
}
if ([message.nameisEqualToString:@"showName"]) {
NSString *info=[NSString stringWithFormat:@"你好%@,很高兴认识你",message.body];
[自我显示Msg:info];
}
if ([message.nameisEqualToString:@"showSendMsg"]) {
NSArray *array=message.body;
NSString *info=[NSString stringWithFormat:@"这是我的手机号码: %@, %@!",array.firstObject,array.lastObject];
[自我显示Msg:info];
}
}
//2. Native调用js
(IBAction)btnClick:(UIButton *)发送者{
if (!self.wkWebView.loading) {
if (sender.tag==123) {
[self.wkWebView评估JavaScript:@"alertMobile()"completionHandler:^(id _Nullable响应,NSError * _Nullable错误){
//待办事项
NSLog(@"%@ %@",响应,错误);
}];
}
if (sender.tag==234) {
[self.wkWebView评估JavaScript:@"alertName("小红")"completionHandler:nil];
}
if (sender.tag==345) {
[self.wkWebView评估JavaScript:@"alertSendMsg("18870707070","周末爬山真高兴")"completionHandler:nil];
}} 别的{
NSLog(@"视图当前正在加载内容");
}
}
JS端:
函数清除() {
document.getElementById("mobile").innerHTML=""
document.getElementById("名称").innerHTML=""
document.getElementById("msg").innerHTML=""
}
//OC调用JS方法列表
函数alertMobile() {
//这里已经调用了,但是不明白为什么alert方法没有响应。
//alert("我是上面的小黄,手机号码是:13300001111")
document.getElementById("mobile").innerHTML="我是上面的小黄,手机号码是:13300001111"
}
函数警报名称(消息){
//alert("你好" + msg + ", 很高兴见到你")
document.getElementById("name").innerHTML="你好" + msg + ",也很高兴见到你"
}
函数alertSendMsg(num,msg) {
//window.alert("这是我的手机号码:" + num + "," + msg + "!")
document.getElementById("msg").innerHTML="这是我的手机号码:" + num + "," + msg + "!"
}
//JS响应方法列表
函数btnClick1() {
window.webkit.messageHandlers.showMobile.postMessage(null)
}
好了,关于深入解析WKWebView:高效iOS网页浏览技术解析和的问题到这里结束啦,希望可以解决您的问题哈!
【深入解析WKWebView:高效iOS网页浏览技术解析】相关文章:
2.米颠拜石
3.王羲之临池学书
8.郑板桥轶事十则
用户评论
最近在APP开发里比较多用WKWebView啊,性能挺不错的。
有17位网友表示赞同!
WKWebView 用起来感觉比原生的UIWebView更灵活一些。
有20位网友表示赞同!
学习了WKWebView,真的感觉网页嵌入到App里的体验有了大幅提升。
有8位网友表示赞同!
以前没接触过WKWebView, 你能说一下具体哪些地方厉害吗?
有12位网友表示赞同!
有在用WKWebView开发APP的朋友吗?可以分享一些使用心得吗?
有15位网友表示赞同!
WKWebView的性能优化真的是很到位,网页加载速度变快了。
有15位网友表示赞同!
对于多页面App来说,用WKWebView能更方便地管理网页内容吧?
有17位网友表示赞同!
WKWebView可以加载自定义的HTML模板吗?
有9位网友表示赞同!
在使用WKWebView的时候遇到过哪些坑?
有9位网友表示赞同!
我想学习如何使用WKWebView来实现动态加载网页内容,有推荐一些资料吗?
有20位网友表示赞同!
WKWebView支持离线浏览吗?
有16位网友表示赞同!
使用WKWebView可以更容易地集成第三方支付接口吗?
有8位网友表示赞同!
关于WKWebView的安全性问题,你们有哪些了解呢?
有12位网友表示赞同!
WKWebView能通过JavaScript与App相互通信吗?
有17位网友表示赞同!
WKWebView 和 UIWebView 的区别是什么?哪个更适合用在 APP 中?
有14位网友表示赞同!
有没有一些专门针对WKWebView的调试工具呢?
有5位网友表示赞同!
我想让我的app里嵌入一个简单的博客平台,感觉可以用WKWebView实现吧?
有17位网友表示赞同!
用 WKWebView 实现网页授权登录有没有什么好方法分享?
有15位网友表示赞同!
WKWebView 可以用于展示一些复杂图表和动画吗?
有16位网友表示赞同!
最近在研究怎么集成GoogleMaps到IOS app中,看到WKWebView可以用来实现,是真的吗?
有8位网友表示赞同!