標準ブラウザでは縦方向に長いページをスワイプし、最上段、最下段に到達した時にバウンスする仕様になっていますが、この挙動を望まない場面があります。
アプリに WebView を使用し、プルリフレッシュを実装した際にこのバウンスのせいで、ページ内をプルしたつもりが、WebView 全体が動いてしまうことがあります。
今回はこの WebView 全体を縦方向に動かなくする方法を紹介します。
INDEX
目次
- WebView(画面全体)が縦方向のスワイプに反応しないようにする
- まとめ
WebView(画面全体)が縦方向のスワイプに反応しないようにする
WebView には scrollView.bounce と言うプロパティがあり、これが縦方向に画面が動く(バウンスする)かどうかを許可する値です。
この値を false にすることで、スワイプによる画面全体のバウンスが無効になります。
Swift
[code]
webView.scrollView.bounces = false
[/code]
まとめ
今回紹介した方法は、冒頭で説明したように WebView でプルリフレッシュが実装されたアプリ 以外に使い道はない気がするので、そういえばこういうのもあったな、といった程度に覚えておけばいいのではないでしょうか。
この記事がみなさんのお役に立ちましたら、下記「Share it」よりブックマークやSNSで共有していただければ幸いです。