国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - IOS - Objective-C 代碼與Javascript 代碼相互調用實例

Objective-C 代碼與Javascript 代碼相互調用實例

2021-02-04 15:35iOS開發網 IOS

這篇文章主要介紹了Objective-C 代碼與Javascript 代碼相互調用實例的相關資料,現在的APP 應用有時候會調用網頁上的內容,為了增加用戶體驗,這里寫下個實例,需要的朋友可以參考下

現在好的IOS 的 APP有時候會跟網頁內容相關聯,當然也是增加用戶體驗,及更好的,有效的體現APP 的功能。

由于本人在項目中會用到這部分功能,做下記錄!

JS調用OC

很多應用里面或多或少的調用了網頁,來達到絢麗的效果,所謂的JS調用OC.....舉個例子吧,網頁上有個按鈕

點擊按鈕跳轉界面,跳轉的動作由OC的代碼實現。

OC調用JS

還是舉個例子,我們OC代碼創建了輸入框比如輸入用戶名,輸入完成后顯示在網頁上,顯示用戶的用戶名

一.利用webView的代理方法實現OC和JS的相互調用

創建屬性

@property(nonatomic,strong)UIWebView * webView;

遵守webView的協議UIWebViewDelegate

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
-(void)webViewLoad{
  
  NSURL * url = [[NSURL alloc]initWithString:@"http://www.baidu.com"];
  self.webView = [[UIWebView alloc]initWithFrame:self.view.bounds];
  NSURLRequest * request = [[NSURLRequest alloc]initWithURL:url];
  self.webView.delegate = self;
  [self.webView loadRequest:request];
  
  [self.view addSubview:self.webView];
  
}
 
//JS調用OC
-(BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType{
  NSString * str = request.URL.relativeString;
  if ([str isEqualToString:@"http://www.baidu.com/"]) {
    NSLog(@"來找度娘");
  }
  return YES;
}
//OC調用JS
-(void)webViewDidFinishLoad:(UIWebView *)webView{
  NSString * str = [self.webView stringByEvaluatingJavaScriptFromString:@"document.getElementById(""\"index-kw""\").value=""\"li""\""];
  NSLog(@"webViewDidFinishLoad=%@",str);
  
}

二.利用第三方的框架實現(需要你和html端的人統一方法的名稱)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
-(void)webViewBridge{
  self.webView = [[UIWebView alloc]initWithFrame:[UIScreen mainScreen].bounds];
  
  NSString * path = [[NSBundle mainBundle]pathForResource:@"ExampleApp.html" ofType:nil];
  NSURL * url = [[NSURL alloc]initFileURLWithPath:path];
  
  [self.webView loadRequest:[NSURLRequest requestWithURL:url]];
  self.webView.delegate = self;
  [self.view addSubview:self.webView];
  //設置能夠橋接
  [WebViewJavascriptBridge enableLogging];
  //設置橋接
   self.bridge =  [WebViewJavascriptBridge bridgeForWebView:self.webView];
  //設置代理
  [self.bridge setWebViewDelegate:self];
  //JS調用OC(testObjcCallback是和html統一的方法名字)
  [self.bridge registerHandler:@"testObjcCallback" handler:^(id data, WVJBResponseCallback responseCallback) {
    NSLog(@"按鈕點擊了");
    self.view.backgroundColor= [UIColor blackColor];
    responseCallback(@"按鈕點擊了");
  }];
  
  
}
 
 
//OC調用JS
 
-(void)webViewDidFinishLoad:(UIWebView *)webView{
  NSLog(@"webViewDidFinishLoad");
  [self.bridge callHandler:@"registerHandler"];
}

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

延伸 · 閱讀

精彩推薦
  • IOSiOS中MD5加密算法的介紹和使用

    iOS中MD5加密算法的介紹和使用

    MD5加密是最常用的加密方法之一,是從一段字符串中通過相應特征生成一段32位的數字字母混合碼。對輸入信息生成唯一的128位散列值(32個字符)。這篇文...

    LYSNote5432021-02-04
  • IOSiOS自定義UICollectionViewFlowLayout實現圖片瀏覽效果

    iOS自定義UICollectionViewFlowLayout實現圖片瀏覽效果

    這篇文章主要介紹了iOS自定義UICollectionViewFlowLayout實現圖片瀏覽效果的相關資料,需要的朋友可以參考下...

    jiangamh8882021-01-11
  • IOS詳解iOS中多個網絡請求的同步問題總結

    詳解iOS中多個網絡請求的同步問題總結

    這篇文章主要介紹了詳解iOS中多個網絡請求的同步問題總結,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧...

    liang199111312021-03-15
  • IOSiOS中滑動控制屏幕亮度和系統音量(附加AVAudioPlayer基本用法和Masonry簡單使用)

    iOS中滑動控制屏幕亮度和系統音量(附加AVAudioPlayer基本用法和

    這篇文章主要介紹了iOS中滑動控制屏幕亮度和系統音量(附加AVAudioPlayer基本用法和Masonry簡單使用)的相關資料,需要的朋友可以參考下...

    CodingFire13652021-02-26
  • IOSiOS開發技巧之狀態欄字體顏色的設置方法

    iOS開發技巧之狀態欄字體顏色的設置方法

    有時候我們需要根據不同的背景修改狀態欄字體的顏色,下面這篇文章主要給大家介紹了關于iOS開發技巧之狀態欄字體顏色的設置方法,文中通過示例代碼...

    夢想家-mxj8922021-05-10
  • IOSiOS實現控制屏幕常亮不變暗的方法示例

    iOS實現控制屏幕常亮不變暗的方法示例

    最近在工作中遇到了要將iOS屏幕保持常亮的需求,所以下面這篇文章主要給大家介紹了關于利用iOS如何實現控制屏幕常亮不變暗的方法,文中給出了詳細的...

    隨風13332021-04-02
  • IOSiOS開發之視圖切換

    iOS開發之視圖切換

    在iOS開發中視圖的切換是很頻繁的,獨立的視圖應用在實際開發過程中并不常見,除非你的應用足夠簡單。在iOS開發中常用的視圖切換有三種,今天我們將...

    執著丶執念5282021-01-16
  • IOSiOS中UILabel實現長按復制功能實例代碼

    iOS中UILabel實現長按復制功能實例代碼

    在iOS開發過程中,有時候會用到UILabel展示的內容,那么就設計到點擊UILabel復制它上面展示的內容的功能,也就是Label長按復制功能,下面這篇文章主要給大...

    devilx12792021-04-02
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 羞羞羞羞 | 亚洲国产高清在线播放 | 亚洲视频在线免费观看 | 亚洲成av人片在线观看 | 91av在线电影 | 一区二区日本 | 人人爽在线观看 | 欧美黄视频 | 久久777| 午夜精品久久久久久久 | 1000部精品久久久久久久久 | 欧美电影在线观看网站 | 久久久午夜爽爽一区二区三区三州 | 天堂va在线高清一区 | 精品久久久久一区二区国产 | 久久久久久久久久国产 | jizzz日本 | 久久久久久毛片免费播放 | 日韩精品在线播放 | 欧美精品亚洲精品 | 久久久精品国产 | 农村人乱弄一区二区电影 | 久久久国产精品 | 亚洲激情在线 | 黄色国产电影 | 国产视频一区在线 | 都市激情 亚洲 | 成人免费看 | 一区二区三区国产在线观看 | 激情毛片| 欧美精品国产精品 | 久久久久久久国产精品 | 久久这里只有精品久久 | 久久情趣视频 | 亚洲精品视频免费观看 | 久久久久久久久国产精品 | 欧美视频在线看 | 国产剧情一区二区 | 亚洲 欧美 另类 综合 偷拍 | av大片网 | 日韩精品在线免费观看 |