Ответ 1
Я думаю, вы можете использовать android: layout_marginRight = 200px функция WebView в вашем макете xml.
Мне нужна операция для загрузки HTML-документа в WebView, но для того, чтобы WebView затем изменился, чтобы он плотно обертывал документ HTML. например если HTML-документ содержит один div размером 300x200 пикселей, я бы хотел, чтобы WebView изменял размер 300px x 200px, чтобы точно содержать документ.
Вертикально WebView ведет себя естественным образом. Высота WebView (с wrap_content) определяется высотой HTML-документа, но странно не шириной, которая всегда заполняет ширину (если только размер не указан для ширины). то есть, насколько я вижу, использование layout_width = "wrap_content" с помощью WebView не работает.
Есть ли способ настроить WebView таким образом, чтобы изменить его ширину? Я не вижу этого. Если содержимое HTML тоньше ширины экрана, я хочу, чтобы WebView был тоньше.
Если нет, существует ли способ получить абсолютный размер элементов после рендеринга в модели документа HTML, который затем я могу использовать для изменения размера ширины WebView?
Чтобы продемонстрировать здесь инструкцию для загрузки статического содержимого в WebView:
browser.loadDataWithBaseURL("/", "Hello!", "text/html", "utf-8", null);
И вот простой макет
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<WebView
android:id="@+id/webview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:visibility="visible"
/>
</LinearLayout>
Я ожидаю, что это покажет WebView в верхнем левом углу, проходящем по ширине, но вместо этого он простирается полностью по всей ширине экрана (несмотря на то, что wrap_content и содержимое меньше ширины)
Я думаю, вы можете использовать android: layout_marginRight = 200px функция WebView в вашем макете xml.