Ответ 1
Странно. Внутри метода OnCreate я использую
webView.getSettings().setBuiltInZoomControls(true);
И он отлично работает здесь. Что-то особенное в вашем веб-просмотре?
Приложение браузера по умолчанию для Android отображает элементы управления увеличением при прокрутке, а также позволяет масштабировать масштаб. Как включить эту функцию для моего собственного веб-представления?
Я пробовал:
webSettings.setBuiltInZoomControls(true);
webSettings.setSupportZoom(true);
но ни одна из функций не будет включена в результате. Btw Я установил WebChromeClient
и WebViewClient
для Webview, если это имеет значение.
Спасибо!
Странно. Внутри метода OnCreate я использую
webView.getSettings().setBuiltInZoomControls(true);
И он отлично работает здесь. Что-то особенное в вашем веб-просмотре?
Используйте это:
webview.getSettings().setBuiltInZoomControls(true);
webview.getSettings().setDisplayZoomControls(false);
Убедитесь, что у вас нет ScrollView, обертывающего ваш веб-просмотр.
В моем случае это была проблема. Кажется, ScrollView мешает жесту.
Чтобы исправить это, просто выберите свой веб-просмотр вне ScrollView.
Попробуйте этот код, я работаю нормально.
webSettings.setSupportZoom(true);
webSettings.setBuiltInZoomControls(true);
webSettings.setDisplayZoomControls(false);
Внутри OnCreate добавьте:
webview.getSettings().setSupportZoom(true);
webview.getSettings().setBuiltInZoomControls(true);
webview.getSettings().setDisplayZoomControls(false);
Внутри HTML-документа добавьте:
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=2, user-scalable=yes">
</head>
</html>
Внутри javascript опустите:
//event.preventDefault ? event.preventDefault() : (event.returnValue = false);
Чтобы включить элементы управления масштабированием в WebView, добавьте следующую строку:
webView.getSettings().setBuiltInZoomControls(true);
С этой строкой кода вы включаете масштабирование в вашем WebView, если вы хотите удалить предоставленные кнопки увеличения и уменьшения, добавьте следующую строку кода:
webView.getSettings().setDisplayZoomControls(false);