【问题标题】:Android webview not filling device screenAndroid webview不填充设备屏幕
【发布时间】:2015-02-23 10:21:14
【问题描述】:

我的视图没有填满整个屏幕,我看到两侧是白色背景。这是我的 XML 文件:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.simarkets.app_1.MainActivity" >

<WebView
    android:id="@+id/webView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent" 
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_alignParentTop="true" />

【问题讨论】:

  • 删除你的 4 填充线..
  • 你说得对,非常感谢

标签: android webview


【解决方案1】:

您必须删除默认设置的所有填充。当您使用活动创建一个新的 android 项目时,生成代码的工具会创建一个填充设置为 5dp 的活动。如果你想删除它,你必须删除它

android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"

此外,最好从资源文件中删除此维度。

另外,如果你想让你的WebView 全屏显示,你可以简单地将它定义为你的活动的根元素:

<WebView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/webView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent" 
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_alignParentTop="true" />

【讨论】:

  • 欢迎 :) 很高兴看到它很有用。如果您认为这是最好的答案,我可以请您接受吗?
  • 它有用但不是最好的 :) 最好的是对我的问题的第一条评论,但我认为我不能将其标记为最佳答案,所以我再次标记你,谢谢
  • 您是否尝试过我回答的第二部分 - 删除整个 RleativeLayout 并将 WebView 作为布局文件的根元素?如果您想在整个屏幕上拉伸 WebView,我认为这是最好的方法。你不需要容器。在不需要容器的地方使用容器是一种不好的做法,因为层次结构越深,布局就越慢:)
【解决方案2】:

试试这个LinearLayout

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<WebView
    android:id="@+id/webView1"
    android:layout_width="match_parent"
    android:layout_height="0dp"
    android:layout_weight="1"/>

试试这个RelativeLayout

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:ads="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.simarkets.app_1.MainActivity" >

<WebView
    android:id="@+id/webView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent" 
    <!--Maybe this part doesn't need-->
    android:layout_alignParentLeft="true" 
    android:layout_alignParentRight="true" 
    android:layout_alignParentTop="true"/>

【讨论】:

  • 感谢您的回答,这都是关于应该删除的 4 条填充线
  • 这就是为什么我没有把填充放在我的答案中,如果你想要你的相对布局也可以使用,如果它解决了你的问题,将它标记为正确答案:)
【解决方案3】:

您的 RelativeLayout 中有填充,因此请删除它:

android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"

【讨论】:

    猜你喜欢
    • 2016-07-26
    • 1970-01-01
    • 2023-03-22
    • 2011-04-24
    • 1970-01-01
    • 2020-01-19
    • 1970-01-01
    • 1970-01-01
    • 2011-08-10
    相关资源
    最近更新 更多