Xamarin Android - 如何摆脱WebView周围无法解释的边距/填充?

问题描述 投票:1回答:1

我有一个LinearLayout,其中包含一个WebView。此WebView加载静态HTML文件。我希望WebView的大小(宽度和高度)与LinearLayout的大小相匹配,但由于某些莫名其妙的原因,有一个神秘的边缘或填充阻止WebView填充LinearLayout。为了说明,我给了LinearLayout一个黑色边框,并且WebView加载的HTML文件的内容是一个红色边框:

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文件级别设置负边距来暴力破解它,但无论我尝试什么,我都无法让这个神秘的边缘让步,我终于转向了这里。

xamarin.android android-webview android-linearlayout margin padding
1个回答
2
投票

WebView是一种网络浏览器,在身体中有一些默认的边距(像其他网络浏览器一样)。您可以使用CSS删除该边距,如下所示:

<body style="margin:0;">

更多信息:Remove unwanted White Space in WebView Android

© www.soinside.com 2019 - 2024. All rights reserved.