私はCordovaアプリを構築しており、iOS 6デバイス(iPod Touch w/iOS 6.1.6)でテストしています。何らかの理由で、WebViewは追加の20pxでスクロール可能であり、画面上部の20pxステータスバーを補っているように見えます。これにより、スクロール可能なWebViewにフォーカスが移動することがあり、アプリでスクロール可能なdiv
sをスクロールさせるのではなく、基本的にユーザーの目には「何も」スクロールしません。 config.xmlの変更、プラグインなどに関連する多数の修正を試しましたが、何も違いはありません。これについては、以下で概説します。
試しました ステータスバーを手動で非表示にします 、効果なし。
// config.xml:
<plugin name="org.Apache.cordova.statusbar" version="0.1.7" />
<feature name="StatusBar">
<param name="ios-package" value="CDVStatusBar" />
</feature>
// index.js (ondeviceready):
window.StatusBar && window.StatusBar.hide();
ステータスバーを強制的にWebビューにオーバーレイさせて、基本的にアプリの高さを460ピクセルではなく480ピクセルにしました。
// config.xml:
<plugin name="org.Apache.cordova.statusbar" version="0.1.7" />
<preference name="StatusBarOverlaysWebView" value="true" />
ステータスバーを強制的に notオーバーレイWebビュー にしようとしました:
// config.xml:
<plugin name="org.Apache.cordova.statusbar" version="0.1.7" />
<preference name="StatusBarOverlaysWebView" value="false" />
<preference name="StatusBarBackgroundColor" value="#000000" />
<preference name="StatusBarStyle" value="lightcontent" />
ボディのマージントップを20pxオフセットしてみました。これにより、デッドホワイトスペースが20px余分に追加されます。
// index.css:
body {
margin-top: 20px;
}
アプリを fullscreen に設定しようとしましたが、これは文字通りアプリにまったく影響しません。
// config.xml:
<preference name="Fullscreen" value="true" />
Safariインスペクターを使用してbody
DOMノードを完全に削除しましたが、それでも20pxスクロールし、CordovaによるWebViewの実装ほどHTMLとは関係がないことを示しています。
誰かがこれに対する解決策を持っていますか?これに遭遇するのは私だけではありません。
ほぼ8時間いじくり回した後、それを理解しました。これからmeta
ビューポート設定を置き換える必要がありました:
<meta name="viewport" content="user-scalable=no, initial-scale=1,
maximum-scale=1, minimum-scale=1, width=device-width,
height=device-height, target-densitydpi=device-dpi" />
これに:
<meta name="viewport" content="user-scalable=no, initial-scale=1,
maximum-scale=1, minimum-scale=1, target-densitydpi=device-dpi" />
のようだ height=device-height
は、ステータスバーを含むデバイスの高さ全体を考慮に入れていました。興味のある人のためにJavaScriptでこれを回避する方法を見ました。これは このStackOverflowの回答 でカバーされています。ただし、完全に削除しても問題はありません(iOS 6以降を対象とするCordovaアプリの場合)。
これをdevicereadyで試しましたか?
window.StatusBar.overlaysWebView(false);
https://github.com/Apache/cordova-plugin-statusbar/blob/master/doc/index.md