2011-07-02 30 views
0

在RelativeLayout中我有一个Imageview用作小部件和RelativeLayout的背景。 RelativeLayout在Imageview上“开”,但我希望它位于Imageview的中心。我如何将它与它对齐?Android:小部件对齐问题

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="470px" 
    android:layout_height="120px" 
    android:layout_gravity="center_vertical" 
    android:gravity="center_vertical" 
    android:id="@+id/widgetlayout" 
    > 
<ImageView android:id="@+id/ImageView00" 
    android:layout_width="470px" 
    android:layout_height="120px" 
    android:scaleType="fitXY" 
    android:background="@android:color/transparent" 
     > 
</ImageView> 
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" 
    android:layout_width="470px" 
    android:layout_height="120px" 
    android:layout_gravity="center" 
    android:gravity="center_horizontal|center_vertical" 
    android:id="@+id/widgetlayoutbelso" 
    > 
... 

任何想法? 谢谢

+0

作为一个方面说明,你有没有考虑在最上方的RelativeLayout上使用android:background而不是使用ImageView? – Gregory

+0

这是第一件要做的事情,但它没有按照我想要的方式工作,因此我决定使用单独的图像视图。我不记得它的原因,几个星期前我创建了这个小部件。 – erdomester

回答

3

android:layout_centerInParent设置为真正你的内部相对布局(你也许可以在这一点上删除重力标志)。

+0

我已经试过了,现在再试一次。它不工作。 – erdomester

+0

在Gregory的帮助下,它现在正在工作。谢谢! – erdomester

1

您的ImageView和RelativeLayouts具有完全相同的布局大小(宽度和高度),因此RelativeLayout无法真正在ImageView中居中。您可以尝试将RelativeLayout布局大小设置为wrap_content,并设置android:layout_centerInParent =“true”(如David所说)。