Я решил эту проблему, используя обратный вызов из JS обратно в мой обработчик JS для Android, запрашивая размеры веб-просмотра. Затем, вернувшись в HTML, я использую методы JS, чтобы изменить размер моего документа, чтобы он точно соответствовал размеру доступного видового экрана.
Что-то вроде этого:
webView.getSettings().setJavaScriptEnabled(true);
webView.addJavascriptInterface(this, "android");
webView.loadUrl("file:///android_asset/start.html");
Затем в start.html в обработчике события onLoad () у меня есть:
h = android.getScreenH();
w = android.getScreenW();
Затем я установил свойства моего окна просмотра через CSS (я использую jQuery в моем HTML, так что это гораздо проще сделать). Ваши getScreenH () и getScreenW () должны учитывать доступный размер области просмотра, за исключением любых оконных декораций по умолчанию (панель действий, панель уведомлений и т. Д.). Это немного глупо, но работает.