Movatterモバイル変換
[0]
ホーム
URL:
画像なし
夜間モード
Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
Uploaded by
Yuki Hirai
PDF, PPTX
48,355 views
WKWebViewとUIWebView
WKWebViewとUIWebViewの違いについて解説
Mobile
◦
Read more
65
Save
Share
Embed
Embed presentation
Download
Download as PDF, PPTX
1
/ 61
2
/ 61
3
/ 61
4
/ 61
5
/ 61
6
/ 61
7
/ 61
8
/ 61
9
/ 61
10
/ 61
11
/ 61
12
/ 61
13
/ 61
14
/ 61
15
/ 61
16
/ 61
17
/ 61
18
/ 61
19
/ 61
20
/ 61
21
/ 61
22
/ 61
23
/ 61
24
/ 61
25
/ 61
26
/ 61
27
/ 61
28
/ 61
29
/ 61
30
/ 61
31
/ 61
32
/ 61
33
/ 61
34
/ 61
35
/ 61
36
/ 61
37
/ 61
38
/ 61
39
/ 61
40
/ 61
41
/ 61
42
/ 61
43
/ 61
44
/ 61
45
/ 61
46
/ 61
47
/ 61
48
/ 61
49
/ 61
50
/ 61
51
/ 61
52
/ 61
53
/ 61
54
/ 61
55
/ 61
56
/ 61
57
/ 61
58
/ 61
59
/ 61
60
/ 61
61
/ 61
Recommended
PDF
Open Liberty: オープンソースになったWebSphere Liberty
by
Takakiyo Tanaka
PDF
[수정본] 우아한 객체지향
by
Young-Ho Cho
PDF
도메인 주도 설계의 본질
by
Young-Ho Cho
PDF
Spring Batch
by
Kokou Gaglo
PDF
Curso de Java Persistence API (JPA) (Java EE 7)
by
Helder da Rocha
PDF
Introduction à JPA (Java Persistence API )
by
Daniel Rene FOUOMENE PEWO
PPTX
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
by
NTT DATA Technology & Innovation
PDF
OpenShiftでJBoss EAP構築
by
Daein Park
PDF
Introduction à React
by
Thibault Martinez
KEY
やはりお前らのMVCは間違っている
by
Koichi Tanaka
PDF
Open Liberty / WebSphere Liberty
by
Takakiyo Tanaka
PPTX
Mozilla Hubsが拓く新世代WebVRのススメ #HubsScrum
by
GREE VR Studio Lab
PPTX
WkWebViewのキャッシュについて調べた
by
firewood
PDF
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
by
日本マイクロソフト株式会社
PDF
MongoDB〜その性質と利用場面〜
by
Naruhiko Ogasawara
PPTX
Its time to React.js
by
Ritesh Mehrotra
PDF
Getting Started with Spring Authorization Server
by
VMware Tanzu
PDF
MVVM in iOS presentation
by
G ABHISEK
PDF
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
by
Yahoo!デベロッパーネットワーク
PDF
React Native
by
vishal kumar
PDF
An Introduction to ReactJS
by
All Things Open
PDF
Swaggerでのapi開発よもやま話
by
KEISUKE KONISHI
PDF
zabbixを使ったクラウド環境の監視とツール連携
by
NHN テコラス株式会社
PPTX
FIWARE - スマートサービスを支えるオープンソース
by
fisuda
PDF
20分でわかるgVisor入門
by
Shuji Yamada
PDF
[LetSwift 2023] 객체지향-함수형 아키텍처 직접 만들기
by
Moonbeom KWON
PPTX
React + Redux + TypeScript === ♥
by
Remo Jansen
PDF
ReactJS
by
Hiten Pratap Singh
PDF
Cocoa勉強会#42-UIWebKitをコンポーネントとして使う
by
Masayuki Nii
PDF
iOS WebView App
by
hagino 3000
More Related Content
PDF
Open Liberty: オープンソースになったWebSphere Liberty
by
Takakiyo Tanaka
PDF
[수정본] 우아한 객체지향
by
Young-Ho Cho
PDF
도메인 주도 설계의 본질
by
Young-Ho Cho
PDF
Spring Batch
by
Kokou Gaglo
PDF
Curso de Java Persistence API (JPA) (Java EE 7)
by
Helder da Rocha
PDF
Introduction à JPA (Java Persistence API )
by
Daniel Rene FOUOMENE PEWO
PPTX
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
by
NTT DATA Technology & Innovation
PDF
OpenShiftでJBoss EAP構築
by
Daein Park
Open Liberty: オープンソースになったWebSphere Liberty
by
Takakiyo Tanaka
[수정본] 우아한 객체지향
by
Young-Ho Cho
도메인 주도 설계의 본질
by
Young-Ho Cho
Spring Batch
by
Kokou Gaglo
Curso de Java Persistence API (JPA) (Java EE 7)
by
Helder da Rocha
Introduction à JPA (Java Persistence API )
by
Daniel Rene FOUOMENE PEWO
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
by
NTT DATA Technology & Innovation
OpenShiftでJBoss EAP構築
by
Daein Park
What's hot
PDF
Introduction à React
by
Thibault Martinez
KEY
やはりお前らのMVCは間違っている
by
Koichi Tanaka
PDF
Open Liberty / WebSphere Liberty
by
Takakiyo Tanaka
PPTX
Mozilla Hubsが拓く新世代WebVRのススメ #HubsScrum
by
GREE VR Studio Lab
PPTX
WkWebViewのキャッシュについて調べた
by
firewood
PDF
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
by
日本マイクロソフト株式会社
PDF
MongoDB〜その性質と利用場面〜
by
Naruhiko Ogasawara
PPTX
Its time to React.js
by
Ritesh Mehrotra
PDF
Getting Started with Spring Authorization Server
by
VMware Tanzu
PDF
MVVM in iOS presentation
by
G ABHISEK
PDF
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
by
Yahoo!デベロッパーネットワーク
PDF
React Native
by
vishal kumar
PDF
An Introduction to ReactJS
by
All Things Open
PDF
Swaggerでのapi開発よもやま話
by
KEISUKE KONISHI
PDF
zabbixを使ったクラウド環境の監視とツール連携
by
NHN テコラス株式会社
PPTX
FIWARE - スマートサービスを支えるオープンソース
by
fisuda
PDF
20分でわかるgVisor入門
by
Shuji Yamada
PDF
[LetSwift 2023] 객체지향-함수형 아키텍처 직접 만들기
by
Moonbeom KWON
PPTX
React + Redux + TypeScript === ♥
by
Remo Jansen
PDF
ReactJS
by
Hiten Pratap Singh
Introduction à React
by
Thibault Martinez
やはりお前らのMVCは間違っている
by
Koichi Tanaka
Open Liberty / WebSphere Liberty
by
Takakiyo Tanaka
Mozilla Hubsが拓く新世代WebVRのススメ #HubsScrum
by
GREE VR Studio Lab
WkWebViewのキャッシュについて調べた
by
firewood
【BS4】時は来たれり。今こそ .NET 6 へ移行する時。
by
日本マイクロソフト株式会社
MongoDB〜その性質と利用場面〜
by
Naruhiko Ogasawara
Its time to React.js
by
Ritesh Mehrotra
Getting Started with Spring Authorization Server
by
VMware Tanzu
MVVM in iOS presentation
by
G ABHISEK
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
by
Yahoo!デベロッパーネットワーク
React Native
by
vishal kumar
An Introduction to ReactJS
by
All Things Open
Swaggerでのapi開発よもやま話
by
KEISUKE KONISHI
zabbixを使ったクラウド環境の監視とツール連携
by
NHN テコラス株式会社
FIWARE - スマートサービスを支えるオープンソース
by
fisuda
20分でわかるgVisor入門
by
Shuji Yamada
[LetSwift 2023] 객체지향-함수형 아키텍처 직접 만들기
by
Moonbeom KWON
React + Redux + TypeScript === ♥
by
Remo Jansen
ReactJS
by
Hiten Pratap Singh
Similar to WKWebViewとUIWebView
PDF
Cocoa勉強会#42-UIWebKitをコンポーネントとして使う
by
Masayuki Nii
PDF
iOS WebView App
by
hagino 3000
PDF
エンジニア戦記 〜小さなチーム、大きな未来〜
by
Yuki Hirai
PPTX
2012 05-19第44回cocoa勉強会発表資料
by
OCHI Shuji
PDF
iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?
by
Kosuke Ogawa
KEY
Ll xcode
by
Net Kanayan
PDF
Css nite(2010.09.23)
by
Yoshiki Ushida
PPTX
北海道勉強会_20140531
by
Hiraku Komuro
PPTX
スマートフォン勉強会関西#16(iOS,Android,WP7マルチタッチ)
by
Tomonori Ohba
KEY
UX on HTML5 x Touch UI
by
dsuke Takaoka
PDF
gumiStudy#5 JavaScript でネイティブiPhone/Androidアプリを作る
by
gumilab
PDF
Mobile Web
by
Makoto Kato
PDF
第16回勉強会のビギナー資料
by
towaki777
PPTX
iOS WKWebViewの魔改造 - iOSDC 2018
by
Shingo Fukuyama
KEY
軽量EvernoteクライアントSmartEverにおけるアプリ高速化の工夫と課題
by
Makoto Setoh
PDF
iPhone での旬なWeb開発 (jQTouch編)
by
dora_kou
PDF
Introduction for Browser Side MVC
by
Ryunosuke SATO
PDF
20080327 ku-librarians勉強会 #98:データベースからデータだけをいただく方法(web api入門)
by
kulibrarians
KEY
ニコニコ動画iOSアプリの UX・マネタイズ・技術の話
by
Kentaro Matsumae
PDF
20120118 titanium
by
Hiroshi Oyamada
Cocoa勉強会#42-UIWebKitをコンポーネントとして使う
by
Masayuki Nii
iOS WebView App
by
hagino 3000
エンジニア戦記 〜小さなチーム、大きな未来〜
by
Yuki Hirai
2012 05-19第44回cocoa勉強会発表資料
by
OCHI Shuji
iOS 8のWebKit Frameworkでアプリ内ブラウザがどう変わる?
by
Kosuke Ogawa
Ll xcode
by
Net Kanayan
Css nite(2010.09.23)
by
Yoshiki Ushida
北海道勉強会_20140531
by
Hiraku Komuro
スマートフォン勉強会関西#16(iOS,Android,WP7マルチタッチ)
by
Tomonori Ohba
UX on HTML5 x Touch UI
by
dsuke Takaoka
gumiStudy#5 JavaScript でネイティブiPhone/Androidアプリを作る
by
gumilab
Mobile Web
by
Makoto Kato
第16回勉強会のビギナー資料
by
towaki777
iOS WKWebViewの魔改造 - iOSDC 2018
by
Shingo Fukuyama
軽量EvernoteクライアントSmartEverにおけるアプリ高速化の工夫と課題
by
Makoto Setoh
iPhone での旬なWeb開発 (jQTouch編)
by
dora_kou
Introduction for Browser Side MVC
by
Ryunosuke SATO
20080327 ku-librarians勉強会 #98:データベースからデータだけをいただく方法(web api入門)
by
kulibrarians
ニコニコ動画iOSアプリの UX・マネタイズ・技術の話
by
Kentaro Matsumae
20120118 titanium
by
Hiroshi Oyamada
WKWebViewとUIWebView
1.
WKWebViewとUIWebView Copylight ©
Classmethod, Inc. Classmethod, Inc.! 平井 祐樹 1
2.
自己紹介 • 平井 祐樹!
• クラスメソッド株式会社! • iPhoneアプリサービス事業部! • iOSアプリ開発歴2年半ぐらい Copylight © Classmethod, Inc. 2
3.
Copylight © Classmethod,
Inc. アジェンダ • WKWebView とは?! • WKWebViewとUIWebViewの違い! • WKWebViewを利用したアプリ内ブラウザ の作り方 3
4.
WKWebView とは? •
UIWebViewの強化版! • UIWebViewとほとんど同じように使える! • 実行速度、安定性の向上された! • WebKit Frameworkに含まれる(≧iOS 8) Copylight © Classmethod, Inc. 4
5.
UIWebViewとWKWebView UIWebView WKWebView
- (void)loadRequest:(NSURLRequest *)request; - (WKNavigation *)loadRequest:(NSURLRequest Copylight © Classmethod, Inc. 5 *)request; - (void)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL; - (WKNavigation *)loadHTMLString:(NSString *)string baseURL:(NSURL *)baseURL; - (void)reload; - (WKNavigation *)reload; - (void)stopLoading; - (void)stopLoading; - (void)goBack; - (WKNavigation *)goBack; - (void)goForward; - (WKNavigation *)goForward; ほとんど同じ!
6.
WKWebViewとUIWebViewの違い Copylight ©
Classmethod, Inc. 6
7.
WKWebViewとUIWebViewの違い プログレスの取得! タイトル・URLの取得!
Safariのような閲覧履歴! エッジスワイプでの戻る/進む操作! プロパティのKVO対応! JavaScriptとの連携強化 Copylight © Classmethod, Inc. 7
8.
Copylight © Classmethod,
Inc. プログレスの取得 8
9.
Copylight © Classmethod,
Inc. 9
10.
UIWebView • プログレスを取得するインターフェース
が用意されていない! • 自前で実装するかOSSを利用 Copylight © Classmethod, Inc. 10 プログレスの取得
11.
Copylight © Classmethod,
Inc. WKWebView プログレスを取得できるようになった!! • estimatedProgressプロパティが追加! • (double)0.0~1.0でプログレスを表す 11 プログレスの取得 UIは自分で実装 しなきゃダメ!!
12.
タイトル・URLの取得 Copylight ©
Classmethod, Inc. 12
13.
Copylight © Classmethod,
Inc. 13
14.
タイトル・URLの取得 Copylight ©
Classmethod, Inc. UIWebView • 表示中のページのタイトルやURLを取得できる インターフェースがない! • 「- webViewDidFinishLoad:」メソッドとかで以 下のようにして取得するしかない 14 NSString *title = [webView stringByEvaluatingJavaScriptFromString:@"document.title"]; ! NSString *url = [webView stringByEvaluatingJavaScriptFromString:@"document.URL"]; Objective-C
15.
Objective-C Copylight ©
Classmethod, Inc. WKWebView 表示中のタイトルやURLが取得できるよう になった!! • title/URLプロパティが追加 15 タイトル・URLの取得 @property (nonatomic, readonly, copy) NSString *title; @property (nonatomic, readonly, copy) NSURL *URL;
16.
Safariのような閲覧履歴 Copylight ©
Classmethod, Inc. 16
17.
Copylight © Classmethod,
Inc. 17
18.
UIWebView • 閲覧履歴は自分で管理するしかない!
• 一応、進む/戻るはある Copylight © Classmethod, Inc. 18 Safariのような閲覧履歴
19.
Copylight © Classmethod,
Inc. WKWebView 閲覧履歴が管理されるようになった!! • backForwardListプロパティが追加! • WebView内の閲覧履歴を勝手に管理 してくれる 19 Safariのような閲覧履歴 UIは自分で実装 しなきゃダメ!!
20.
Copylight © Classmethod,
Inc. エッジスワイプでの! 戻る/進む操作 20
21.
Copylight © Classmethod,
Inc. 21
22.
エッジスワイプでの戻る/進む操作 UIWebView •
UISwipeGestureなどで自分で実装するし かない Copylight © Classmethod, Inc. 22
23.
エッジスワイプでの戻る/進む操作 Copylight ©
Classmethod, Inc. WKWebView プロパティの設定だけで簡単にできるように なった!! • allowsBackForwardNavigationGestures がプロパティ追加 23
24.
プロパティのKVO対応 Copylight ©
Classmethod, Inc. 24
25.
プロパティのKVO対応 UIWebView •
プロパティはKVOに対応していない Copylight © Classmethod, Inc. 25
26.
Copylight © Classmethod,
Inc. WKWebView 以下のプロパティがKVOに対応した!! – title! – URL! – loading! – estimatedProgress! – hasOnlySecureContent! – canGoBack! – canGoForward 26 プロパティのKVO対応
27.
JavaScriptとの連携強化 Copylight ©
Classmethod, Inc. 27
28.
JavaScript ← Native
Copylight © Classmethod, Inc. 28
29.
! - (NSString
*)stringByEvaluatingJavaScriptFromString:(NSString *)script; Copylight © Classmethod, Inc. UIWebView • ロード済みのコンテンツに対して、以下のメソッ ドでJavaScriptのコードを実行できる 29 JavaScript ← Native Objective-C
30.
Objective-C Copylight ©
Classmethod, Inc. WKWebView • ロード済みのコンテンツに対して、以下のメソッ ドでJavaScriptのコードを実行できる! ! ! 30 JavaScript ← Native ! - (void)evaluate#"https://www.slideshare.net/slideshow/wkwebviewanduiwebview/40057203#31">Copylight © Classmethod,
Inc. User Scripts • 読み込み開始/終了時に実行する JavaScriptを注入することができる!! – 広告を削除! – コメントを非表示! – 文字列の置換 31 JavaScript ← Native
32.
例:Webページの背景を変更する // ページの背景を赤(#F00)にする
JavaScript コード NSString *source = @"document.body.style.background = "#F00""; // ドキュメントの読み込みが完了したタイミングで、JavaScriptコードを実行する WKUserScript *userScript = [[WKUserScript alloc] WKUserContentController *userContentController = [WKUserContentController new]; [userContentController addUserScript:userScript]; ! WKWebViewConfiguration *configuration = [WKWebViewConfiguration new]; configuration.userContentController = userContentController; ! // WKWebView インスタンスの生成 self.webView = [[WKWebView alloc] initWithFrame:self.view.bounds Copylight © Classmethod, Inc. initWithSource:source injectionTime:WKUserScriptInjectionTimeAtDocumentEnd forMainFrameOnly:YES]; configuration:configuration]; 32 JavaScript ← Native Objective-C
33.
JavaScript → Native
Copylight © Classmethod, Inc. 33
34.
Objective-C Copylight ©
Classmethod, Inc. UIWebView • 以下のデリゲートをフック 34 JavaScript ← Native ! - (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType;
35.
UIWebView JavaScript ←
Native JavaScript function executeNativeCode() { // 任意のschemeをで呼び出す open("native://some”); Objective-C Copylight © Classmethod, Inc. 35 } -(BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType { if ([request.URL.scheme isEqualToString:@"native"]) { // Nativeの処理・・・ return NO; } else { return YES; } } めんどくさい・・・
36.
Copylight © Classmethod,
Inc. WKWebView • Message Handlers(←New!!) 36 JavaScript ← Native
37.
Message Handlers •
JavaScriptからNativeコードに対してメッ セージを送信できる! ! window.webkit.messageHandlers.{NAME}.postMessage() Copylight © Classmethod, Inc. 37 JavaScript ← Native JavaScript
38.
例:JavaScriptから受け取った文字列 Objective-C WKUserContentController
*userContentController = [WKUserContentController new]; [userContentController addScriptMessageHandler:self name:@"log"]; WKWebViewConfiguration *configuration = [WKWebViewConfiguration new]; configuration.userContentController = userContentController; self.webView = [[WKWebView alloc] initWithFrame:self.view.bounds ・・・ ! - (void)userContentController:(WKUserContentController *)userContentController didReceiveScriptMessage:(WKScriptMessage *)message Copylight © Classmethod, Inc. をNSLogに表示する configuration:configuration]; 38 { if ([message.name isEqualToString:@"log"]) { NSLog(@"%@", message.body); } }
39.
例:JavaScriptから受け取った文字列 をNSLogに表示する JavaScript
! window.webkit.messageHandlers.log.postMessage(”コンソールに文字を表 示!”); Copylight © Classmethod, Inc. 39
40.
Copylight © Classmethod,
Inc. WKWebView で! たくさん機能が強化された!! 40
41.
せっかくなので WKWebView を!
Copylight © Classmethod, Inc. 使ってみよう! 41
42.
WKWebViewを利用したアプリ内ブ Copylight ©
Classmethod, Inc. ラウザの作り方 42
43.
https://github.com/hirai-yuki/ WebBrowserSample Copylight
© Classmethod, Inc. 43
44.
Copylight © Classmethod,
Inc. デモ 44
45.
KVOを利用すると超簡単! Copylight ©
Classmethod, Inc. 45
46.
Copylight © Classmethod,
Inc. プログレス表示 46
47.
Copylight © Classmethod,
Inc. プログレス表示 • estimatedProgressの変更を監視(KVO)! • UIは自分で用意! - SGNavigationProgressを利用 47
48.
Objective-C // WKWebView
インスタンスのプロパティの変更を監視する [self.webView addObserver:self forKeyPath:@"estimatedProgress" options:NSKeyValueObservingOptionNew context:nil]; ! ・・・ ! - (void)observeValueForKeyPath:(NSString *)keyPath Copylight © Classmethod, Inc. プログレス表示 ofObject:(id)object change:(NSDictionary *)change context:(void *)context 48 { if ([keyPath isEqualToString:@"estimatedProgress"]) { // estimatedProgressが変更されたら、プログレスバーを更新する CGFloat progressPercentage = self.webView.estimatedProgress * 100.0f; [self.navigationController setSGProgressPercentage:progressPercentage]; } }
49.
ネットワークインジケータの表示 Copylight ©
Classmethod, Inc. 49
50.
ネットワークインジケータの表示 • loadingの変更を監視(KVO)
Copylight © Classmethod, Inc. 50
51.
ネットワークインジケータの表示 Objective-C //
WKWebView インスタンスのプロパティの変更を監視する Copylight © Classmethod, Inc. 51 [self.webView addObserver:self forKeyPath:@"loading" options:NSKeyValueObservingOptionNew context:nil]; ! ・・・ ! - (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context { if ([keyPath isEqualToString:@"loading"]) { // loadingが変更されたら、ステータスバーのインジケーターの表示・非表示を切り替える UIApplication *app = [UIApplication sharedApplication]; app.networkActivityIndicatorVisible = self.webView.loading; } }
52.
Copylight © Classmethod,
Inc. 表示中のタイトル 52
53.
Copylight © Classmethod,
Inc. 表示中のタイトル • titleの変更を監視(KVO) 53
54.
Objective-C // WKWebView
インスタンスのプロパティの変更を監視する Copylight © Classmethod, Inc. 表示中のタイトル 54 [self.webView addObserver:self forKeyPath:@"title" options:NSKeyValueObservingOptionNew context:nil]; ! ・・・ ! - (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context { if ([keyPath isEqualToString:@"title"]) { // titleが変更されたら、ナビゲーションバーのタイトルを設定する self.title = self.webView.title; } }
55.
Copylight © Classmethod,
Inc. 戻る/進むボタン 55
56.
Copylight © Classmethod,
Inc. 戻る/進むボタン • canGoBack、canGoForwardの変更を監視 (KVO) 56
57.
Objective-C // WKWebView
インスタンスのプロパティの変更を監視する [self.webView addObserver:self forKeyPath:@"canGoBack" options:NSKeyValueObservingOptionNew context:nil]; ! ・・・ ! - (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context Copylight © Classmethod, Inc. 57 { if ([keyPath isEqualToString:@"title"]) { // canGoBackが変更されたら、「<」ボタンの有効・無効を切り替える self.backButton.enabled = self.webView.canGoBack; } } 戻る/進むボタン
58.
Copylight © Classmethod,
Inc. まとめ • WKWebViewで高機能なアプリ内ブラウザ が簡単につくれる! • JavaScriptとの連携は使い方次第でかなり 強力になる可能性大 58
59.
ご清聴ありがとうございました Copylight ©
Classmethod, Inc. 59
Download
[8]
ページ先頭
©2009-2025
Movatter.jp