将WebView设置在水平中心

时间:2017-09-10 17:39:16

标签: android webview

我在网页浏览中放置了一个gif图片,我想将webview放在水平中心。我试过这段代码 机器人:layout_centerHorizo​​ntal ="真"相对布局,但确实有效

<RelativeLayout
  android:layout_width="match_parent"
  android:layout_height="match_parent" 
  android:gravity="center_horizontal" >
 <WebView 
  android:id="@+id/imgChargement"
  android:layout_width="wrap_content" 
  android:layout_height="wrap_content" 
  android:layout_centerHorizontal="true" />
</RelativeLayout> 

但它不起作用 任何人都可以帮助我!

2 个答案:

答案 0 :(得分:1)

尝试更改

android:layout_centerHorizontal="true"

android:layout_centerInParent="true"
WebView的

最终相对布局将如下所示

<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_horizontal"
>
<WebView
    android:id="@+id/imgChargement"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerInParent="true" />

答案 1 :(得分:1)

你说你正在加载我认识的图像,但我会从简单开始。这是一种加载一些文本并将其水平居中的方法。在扩充布局后,您可以在代码中执行此操作。

// get a variable for the webview, then
imgChargement.loadData("<html><body  align='center'>You scored <b>192</b> points.</body></html>", "text/html", null);

换句话说,我使用align='center'来集中WebView的内容,而不是WebView。现在,您可以将WebView置于布局中心,但如果内容不在WebView中居中,那么您将无法获得正在寻找的居中外观。

此外,您不能只在WebView中粘贴图像,然后拥有WebView“wrap_content”(就像在布局android视图时一样)。 “wrap_content”被忽略,WebView宽度最终默认为父级宽度。(您可以使用“wrap_content”,但它不会将视图调整为HTML内容,因为我认为您期望它做)。

因此,对于您的情况,只需将我的示例的body标签内的文本替换为您的图片的HTML,并查看是否可以帮助您解决问题。

我正在使用以下XML而不使用父级中的任何居中属性。

    <WebView
        android:id="@+id/imgChargement"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"/>