Как включить средства масштабирования и увеличить масштаб в WebView? - программирование
Подтвердить что ты не робот

Как включить средства масштабирования и увеличить масштаб в WebView?

Приложение браузера по умолчанию для Android отображает элементы управления увеличением при прокрутке, а также позволяет масштабировать масштаб. Как включить эту функцию для моего собственного веб-представления?

Я пробовал:

webSettings.setBuiltInZoomControls(true);
webSettings.setSupportZoom(true);

но ни одна из функций не будет включена в результате. Btw Я установил WebChromeClient и WebViewClient для Webview, если это имеет значение.

Спасибо!

4b9b3361

Ответ 1

Странно. Внутри метода OnCreate я использую

webView.getSettings().setBuiltInZoomControls(true);

И он отлично работает здесь. Что-то особенное в вашем веб-просмотре?

Ответ 2

Используйте это:

webview.getSettings().setBuiltInZoomControls(true);
webview.getSettings().setDisplayZoomControls(false);

Ответ 3

Убедитесь, что у вас нет ScrollView, обертывающего ваш веб-просмотр.

В моем случае это была проблема. Кажется, ScrollView мешает жесту.

Чтобы исправить это, просто выберите свой веб-просмотр вне ScrollView.

Ответ 4

Попробуйте этот код, я работаю нормально.

 webSettings.setSupportZoom(true);
 webSettings.setBuiltInZoomControls(true);
 webSettings.setDisplayZoomControls(false);

Ответ 5

Внутри 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);

Ответ 6

Чтобы включить элементы управления масштабированием в WebView, добавьте следующую строку:

webView.getSettings().setBuiltInZoomControls(true);

С этой строкой кода вы включаете масштабирование в вашем WebView, если вы хотите удалить предоставленные кнопки увеличения и уменьшения, добавьте следующую строку кода:

webView.getSettings().setDisplayZoomControls(false);