一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

您好,歡迎來(lái)電子發(fā)燒友網(wǎng)! ,新用戶?[免費(fèi)注冊(cè)]

您的位置:電子發(fā)燒友網(wǎng)>源碼下載>通訊/手機(jī)編程>

詳解iOS與H5的交互問(wèn)題

大小:0.3 MB 人氣: 2017-09-25 需要積分:1

  iOSH5因其及時(shí)響應(yīng)的更新速度媲美著需求的速度和較高的趣味性受到越來(lái)越多的用戶的青睞。目前,大多數(shù)的應(yīng)用中都嵌入了H5。優(yōu)點(diǎn)非常明顯。那么在iOS應(yīng)用中如何嵌入一個(gè)H5,并且和它進(jìn)行交互就成了一個(gè)勢(shì)必要掌握的技術(shù)了。本文我將結(jié)合我在項(xiàng)目中的一些需求整理出對(duì)應(yīng)的技術(shù)點(diǎn),僅供參考。

  在iOS開(kāi)發(fā)中,H5的嵌入可以通過(guò)UIWebView或者WKWebView。這兩個(gè)都是繼承UIView,來(lái)加載web數(shù)據(jù)的類(lèi)。UIWebView是在iOS2的時(shí)候開(kāi)始使用的。特點(diǎn)是加載速度慢,占用內(nèi)存多,優(yōu)化艱難。WKWebView是在iOS8蘋(píng)果新推出的,加載速度快,占用內(nèi)存較少,是一個(gè)不錯(cuò)的選擇。如果想要比較兩者的區(qū)別,您可以選擇一個(gè)網(wǎng)頁(yè)進(jìn)行測(cè)試一下。鑒上所述,我們選擇WKWebView進(jìn)行開(kāi)發(fā)。好了,廢話不多說(shuō)了。

  1

  WKWebView創(chuàng)建和加載

  - (void)createWebView

  {

  WKWebViewConfiguration *config = [[WKWebViewConfiguration alloc] init]

  // 根據(jù)需要去設(shè)置對(duì)應(yīng)的屬性

  WKWebView *webView = [[WKWebView alloc]initWithFrame:self.view.bounds configuration:config];

  webView.navigationDelegate = self;

  [self.view addSubview:webView];

  NSURL *url = [NSURL URLWithString:self.strURL];

 ?。踫elf loadWebViewWithURL:url]; // JS調(diào)用OC 添加處理腳本

  [self.webView.configuration.userContentController addMessageHandler:self name:@“Share”];

  }

  2

  JS調(diào)用OC代碼

 ?。踫elf.webView.configuration.userContentController addMessageHandler:self name:@“Share”];

  這是利用WKWebView的一個(gè)新特性MessageHandler來(lái)處理JS調(diào)用原生方法。要實(shí)現(xiàn)JS調(diào)用iOS原生方法,步驟見(jiàn)下。

  添加《WKMessageHandler》協(xié)議。讓控制器成為MessageHandler的代理對(duì)象。

非常好我支持^.^

(0) 0%

不好我反對(duì)

(0) 0%

      發(fā)表評(píng)論

      用戶評(píng)論
      評(píng)價(jià):好評(píng)中評(píng)差評(píng)

      發(fā)表評(píng)論,獲取積分! 請(qǐng)遵守相關(guān)規(guī)定!

      ?