ブログBlog
WebView
投稿日:2017年02月16日
ヌノです。
objective-cで最近WebViewで調べたのでここに記載
objective-cで使用できるWebViewは大きく分けて3つあります
・UIWebView
古くからある従来のWebView。多くの方が使っているので、情報も多くあり、実装は比較的楽だと思います。
・WkWebView
iOS8から使用できるWebView。UIWebViewと違って外部領域のメモリを使用するので、メモリ領域によるクラッシュが発生しにくくなっています。
また、Javascript等を使用する事できます。
・SFSafariViewController
ios9から使用できるWebView。上記2種類のWebViewと違いSafariとクッキーやその他データを共有できるので、ログイン情報等を引き継いだりできます。
私はWKWebViewを調べていたのでWKWebViewの話です。
基本はUIWebViewと同じ記述で実装できます。
例えば
UIWebViewではページ読み込み開始時呼ばれる「shouldStartLoadWithRequest」という関数がありますが、WKWeBviewには同様の関数で「didStartProvisionalNavigation」が使えます。
ですがWKWebViewにしかない機能もあります。例えば表示履歴の取得です。
UIWebViewの場合は、自分で配列か何かで保持する必要がありますが、WKWebviewの場合だと「backForwardList」というプロパティに保持されています。
機能としては便利なようですが、情報を探しても中々見つからなかったのがネックかと思いました。