Подтвердить что ты не робот

Содержимое WebView wrap-content

Можно ли загрузить URL-адрес в WebView и изменить его размер, чтобы он соответствовал экрану? Я хочу сказать, что хочу сделать WebPage маленьким, чтобы пользователю не нужно прокручивать. Возможно ли это?

4b9b3361

Ответ 1

@user289751, yalçın

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

скорее я хотел бы предложить альтернативу... его лучше попытаться установить средства управления увеличением... не знаю, будут ли они работать в 2.1 или нет...

webview.getSettings().setBuiltInZoomControls(true);

Надеюсь, что это решает проблему ур... coz now u r дает пользователю возможность изменять уровень масштабирования...

Ответ 2

Вы также можете попробовать установить алгоритм компоновки для того же самого. Он работал у меня

webview.getSettings().setLayoutAlgorithm(LayoutAlgorithm.SINGLE_COLUMN);

Ответ 3

Установите начальную шкалу в 1. Затем она масштабируется, чтобы заполнить экран. Не тестировали, как это работает на действительно высоких веб-сайтах (например, в блогах с большим количеством комментариев), но он работает на Droid X и HTC Aria со стандартной веб-страницей.

WebView.setInitialScale(1);

Я продолжу тестирование с разных веб-страниц, но пока это лучшее решение, которое у меня есть для этой проблемы.

EDIT: Протестировано с неприлично длинной веб-страницей как на Droid X, так и на Aria и получило положительные результаты на обоих. Установка начального масштаба на 0, кажется, полностью исключает, в результате чего начальный масштаб равен 100. Я доволен этими результатами, надеюсь, что это поможет другим, борющимся с этой проблемой.

Ответ 4

wb.getSettings().setLoadWithOverviewMode(true);
wb.getSettings().setUseWideViewPort(true);

Ответ 5

webview_settings.setLoadWithOverviewMode(true);
webview_settings.setUseWideViewPort(true);
webview_settings.setBuiltInZoomControls(true);

Ответ 6

Вы пытались просто называть WebView.zoomOut() несколько раз, пока не вернете false?

Кроме того, я хотел бы отметить, что этот метод, который вы хотите использовать, действительно зависит от того, что веб-страница довольно короткая. Если страница длинная, и вы уменьшаете масштаб, чтобы полностью соответствовать ей, пользователю нужен очень хороший глаз!;)

Ответ 7

Я смог содержать всю страницу в своем представлении, выполнив следующее. Сначала установите ширину и высоту в wrap_content. Затем установите начальную шкалу так, как это:

WebView webview = (WebView) currentActivity.findView(R.layout.web_view, R.id.webview);
webview.setInitialScale(1);

Я обнаружил, что я могу заставить это сохранить ширину до минимума, необходимую для отображения читаемого шрифта, а затем прокручивать вдоль координаты y каждый раз, выполняя следующее. Сначала установите как высоту, так и ширину в wrap_content. Затем установите плотность масштабирования далеко в вашем коде следующим образом:

WebView webview = (WebView) currentActivity.findView(R.layout.web_view, R.id.webview);
webview.getSettings().setDefaultZoom(ZoomDensity.FAR);

Это, вероятно, лучшее решение большую часть времени. Подумайте, насколько мал шрифт, если вы полностью отображаете следующую веб-страницу:

Ответ 8

webview.setInitialScale(number);

где больше "число", тем больше будет увеличена ваша страница. начните с более низких чисел (например, 10) и настройтесь на вкус

Ответ 9

Используйте этот код для изменения размера веб-представления в соответствии с экраном.

setScrollContainer (ложь);

Ответ 10

Я получил это, чтобы работать в диалоговом окне, используя WRAP_CONTENT для обоих измерений WebView, к сожалению, когда веб-страница становится слишком большой, веб-просмотр выталкивает все мои другие виджеты с экрана.

Система компоновки Android довольно неинтуитивная!