WebView をアプリで利用していてピンチアウトで拡大するのはいいが、ピンチインで縮小させたくないときの設定をメモ
ピンチインで縮小
このピンチインで縮小というか WebView 自体が小さくなる現象はやめたい。
調査
- Web側 の viewport の設定を変更しても解消されない。そもそもピンチインのとき scale は縮小はしてなかった。
- 拡大・縮小を無効にする方法はたくさんあるが、縮小のみする設定は存在しない。
- UIScrollView で zoom で検索していろいろ関数などを見ていたら、bouncesZoom というのを発見、たしかに動きとしてはバウンスに近い。
- bouncesZoom の値を false に設定すると解消された。
解決方法
var webView: WKWebView!
override func viewDidLoad() {
super.viewDidLoad()
// WKWebViewを生成
webView = WKWebView(frame: view.frame)
// WKWebViewをViewControllerのviewに追加する
view.addSubview(webView)
// リクエストを生成
let request = URLRequest(url: URL(string: "https://www.google.co.jp/")!)
// リクエストをロードする
webView.load(request)
// ピンチインで WKWebView 自体が縮小しないよう設定
webView.scrollView.bouncesZoom = false
}
- この設定を追加すると ピンチインで縮小されない。というか WKWebView 自体が縮小しない
webView.scrollView.bouncesZoom = false