Xamarin Android - Как избавиться от необъяснимых полей / отступов вокруг WebView? - PullRequest
1 голос
/ 17 апреля 2019

У меня есть LinearLayout, который содержит WebView внутри него.Этот WebView загружает статический файл HTML.Я хочу, чтобы размер (ширина и высота) WebView соответствовал размеру LinearLayout, но по какой-то необъяснимой причине существует таинственное поле или отступ, мешающий WebView заполнить LinearLayout.Чтобы проиллюстрировать это, я дал LinearLayout черную рамку, а содержимое HTML-файла, загружаемого WebView, красной рамкой:

Visual of issue using borders

Вотaxml для этих элементов:

<LinearLayout
        android:id="@+id/alertViewProductReplacement_ReplacementProductLinearLayout"
        android:layout_width="100dp"
        android:layout_height="225dp"
        android:layout_margin="0dp"
        android:padding="0dp"
        android:fillViewport="true"
        android:layout_toRightOf="@id/alertViewProductReplacement_arrow"
        android:background="@drawable/dpBorder"
        android:orientation="vertical">
        <WebView  xmlns:android="http://schemas.android.com/apk/res/android"
            android:id="@+id/replacementProductsWebView"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:fillViewport="true"
            android:layout_margin="0dp"
            android:padding="0dp"
            android:background="@null"/>
</LinearLayout>

Некоторые излишние излишние вещи, на которые я хотел обратить внимание выше, - это установка полей и отступов для обоих равными 0, установка высоты и ширины WebView равным «fill_parent»и установка fillViewport = "true".Я также попытался запрограммировать форсирование 0 поля и отступы, а также изменить LinearLayout на RelativeLayout.Ни одна из этих вещей не имела никакого эффекта, она всегда выглядит одинаково с этим небольшим пространством между ними.

Я также укажу, что сам контент HTML не имеет полей или отступов за пределами красной границыЭто ясно наблюдается, если я загружаю HTML-файл непосредственно в браузер: enter image description here

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

1 Ответ

2 голосов
/ 17 апреля 2019

WebView - это тип веб-браузера и имеет некоторое поле по умолчанию в теле (как и другие веб-браузеры).Вы можете удалить это поле, используя CSS, например, так:

<body style="margin:0;">

Дополнительная информация: Удаление нежелательных пробелов в WebView Android

...