iPhone(シミュレータ)でweb表示してみる
アプリケーションでウェブ表示をしてみます。
web表示では以下の3つの手段があるみたいです。
- UIWebView
- WKWebView
- SFSafariViewController
UIWebViewは現状、完全な非推奨ではないみたいですがWKWebViewのドキュメントにも"使わないで"と書いており、WKWebVIew は iOS8.0から使用できるので、こちらで実装してみます。
WKWebView - WebKit | Apple Developer Documentation
storyboardにWebKit Viewを設置
せっかくなので3つ設置してみました。
そしてテスト用にiOS 8.0 and Laterに変更
するとエラーが!
Safe Area Layout Guide before iOS 9.0
こちらの方は原因が簡単でした。
single viewで新規作成したstoryboardは下記の設定が入っているので、このチェックを外せばエラーは消えます。
Use Safe Area Layout Guides って?
本題から外れますが気になったので調べました。
iPhoneXには画面の作りが独特で上の方に凹んだ部分がありますね。
この部分はセーフエリアと呼ばれていて、自動的に調節してくれるのが Use Safe Area Layout Guidesです。
ただしこの設定はiOS9.0以上でないと利用できない設定なので、ビルド設定をiOS8.0に変更したのでエラーになりました。
class unavailable
利用できない・・・?
調べてみると WKWebView を Interface Builder で使用するには iOS11.0以降ではないと現状エラーになるとのこと。
WKWebView: build fail for iOS 10.2. XCode9 beta 6 | Apple Developer Forums
WKWebKitさえいればそれでいい。 // Speaker Deck
なので Interface Builder を利用せずにソースコードで書いてみます。
まずは Apple DeveloperDocument にあるサンプルソースを参考に書いてみます。
WKWebView - WebKit | Apple Developer Documentation
シミュレータで動いた!
簡単に動かせるサンプルがあるっていいですね!