Почему функция pinch-to-zoom не работает в моем Android-браузере?

Добрый день!

Этот вопрос, кажется, задавался в разных формах, но для меня ничего не работало.

У меня есть активность с макетом:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context="${relativePackage}.${activityClass}" > <include layout="@layout/window_title" /> <WebView android:id="@+id/webView" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_centerHorizontal="true" android:layout_below="@+id/linear_layout"/> </RelativeLayout> 

Вот как я его настраиваю:

  // Enable JavaScript. WebView myWebView = (WebView) findViewById(R.id.webView); WebSettings webSettings = myWebView.getSettings(); webSettings.setJavaScriptEnabled(true); // Settings so page loads zoomed-out all the way. webSettings.setLoadWithOverviewMode(true); webSettings.setUseWideViewPort(true); webSettings.setBuiltInZoomControls(true); 

Вот параметр версии из моего файла манифеста:

 <uses-sdk android:minSdkVersion="10" android:targetSdkVersion="17" /> 

Я пытаюсь загрузить эту страницу в WebView:

 https://new.livestream.com/lcboise 

Страница загружается просто отлично, но я не могу ее зажать. Я пробовал различные комбинации параметров WebView (выше, в том числе другие, не перечисленные), но он просто не будет увеличиваться.

Замечания:

1) Загружая другую страницу, которую я использую ( https://lcboise.infellowship.com/UserLogin ) в ТОЧНОМ, тот же WebView позволяет мне увеличивать масштаб.

2) Мое основное тестовое устройство, где НЕ работает, – это HTC One, работающий под управлением v4.4.3 Android.

3) Я могу загружать и масштабировать страницу livestream на более старом тестовом устройстве, которое я использую, которое работает под управлением v2.3.3 Android.

Возможно ли, что что-то на самой странице нарушает работу WebView на HTC One? Если да, то можно предположить, что это возможно? Любые другие идеи ???

Спасибо!

Обновить [РЕШЕНИЕ]:

Вот что я должен был добавить в свой WebView, чтобы заставить работать сжимать до зума:

  myWebView.setWebViewClient(new WebViewClient() { @Override public void onPageFinished(WebView view, String url) { String javascript="javascript:document.getElementsByName('viewport')[0].setAttribute('content', 'initial-scale=1.0,maximum-scale=10.0');"; view.loadUrl(javascript); } }); 

Это страница, с которой вы связаны, имеет следующий метатег:

 <meta name="viewport" content="width=1024, maximum-scale=1.0, target-densitydpi=device-dpi"> 

На странице, которая работает, есть другой метатег просмотра. Бит maximum-scale говорит WebView не допускать масштабирование более чем указанной суммы.

Сайт также должен быть разбит в любом современном мобильном браузере. Установка максимальной шкалы на низкое значение, как это, не очень «мобильная», так что это может быть просто ошибкой на сайте. Вы пробовали связаться с владельцем, может быть, они могут исправить его на стороне сервера?

В WebView вы не можете многое сделать, что не приведет к неправильной обработке других сайтов. Вы можете попробовать ввести JS для исправления страницы, изменив метатег в качестве последнего средства.

Вы пробовали это предложение?

 webSettings.setSupportZoom(true); 

См. Отключение масштабирования в WebView?

Обратите внимание, что ссылка касается отключения масштабирования. Но, по мнению некоторых пользователей, ваш зум отключается по умолчанию.

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

 webview.getSettings().setSupportZoom(true); webview.getSettings().setBuiltInZoomControls(true) 

Для Zoom:

 webSettings.getSettings().setBuiltInZoomControls(true); 

Отключить:

 webSettings.getSettings().setBuiltInZoomControls(false); 
Intereting Posts
OutOfMemoryException при передаче изображения камеры в OpenCV «Вы не можете установить это приложение, потому что другой пользователь уже установил несовместимую версию на этом устройстве» Закругленные углы для изображения в андроиде Сколько Android-устройств мне нужно для тщательного тестирования? Основы использования logcat в разработке Android Удаление образа / имени файла из пути в android ActionBar не работает при расширении ListActivity Android: добавление лицензии на простое приложение hello world на эмуляторе Модули Robolectric и Library с файлами ресурсов В адаптере gridview getView (position == 0) вызывается слишком много раз для измерения макета, когда setImageBitmap () в загрузчике Предоставляет ли ведущий знания о Activity / Context плохую идею в шаблоне MVP? Android с Nexus 6 – как избежать снижения приоритета аудиопотока OpenSL, связанного с фокусом приложения? Как показать диалог прогресса, когда страница HTML загружена в WebView Spring RestTemplate HTTP-сообщение с параметрами вызывает ошибку 400 ошибок Перехватчик OkHttp с использованием OkHttpClient без цикла зависимости