0

我有一个位于父布局中的微调器,它包含微调器和嵌套的相对布局。我遇到的问题是我似乎无法让 Spinner 与此父布局对齐,即使我指定在父布局中对齐,它仍然与嵌套视图对齐。

澄清一下:我的 Spinner 与“relativeone”的左上角对齐,而不是“back_layout”。

有任何想法吗?

相关XML代码:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/back_layout"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#000000"
    android:gravity="center"
    >

    <Spinner
        android:id="@+id/spinner"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:background="#FFFFFF"
        android:entries="@array/spinner"
        android:layout_alignLeft="@+id/relativeone" />

    <RelativeLayout
        android:id="@+id/relativeone"
        android:layout_width="300dp"
        android:layout_height="300dp"
        android:layout_gravity="center" 
        android:gravity="center">

        <RelativeLayout
            android:id="@+id/relativetwo"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_gravity="center"
            android:gravity="center" >

            <ImageView
                android:id="@+id/imageview"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:layout_alignParentLeft="true"
                android:layout_alignParentTop="true"
                android:layout_gravity="center"
                android:scaleType="fitXY" />

            <Button
                android:id="@+id/buttonone"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentBottom="true"
                android:layout_centerHorizontal="true"
                android:text="Take Photo" />
        </RelativeLayout>
    </RelativeLayout>

</RelativeLayout>
4

1 回答 1

1

您需要对属性进行一些小的更改才能使其正常工作。

从 中删除中心对齐back_layout,从微调器中删除左对齐,然后在父级中添加中心到relativeone

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/back_layout"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#000000" >
    <Spinner
        android:id="@+id/spinner1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true" />
    <RelativeLayout
        android:id="@+id/relativeone"
        android:layout_width="300dp"
        android:layout_height="300dp"
        android:layout_centerInParent="true"
        android:layout_gravity="center"
        android:gravity="center" >
        <RelativeLayout
            android:id="@+id/relativetwo"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_gravity="center"
            android:gravity="center" >
            <ImageView
                android:id="@+id/imageview"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:layout_alignParentLeft="true"
                android:layout_alignParentTop="true"
                android:layout_gravity="center"
                android:scaleType="fitXY" />
            <Button
                android:id="@+id/buttonone"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentBottom="true"
                android:layout_centerHorizontal="true"
                android:text="Take Photo" />
        </RelativeLayout>
    </RelativeLayout>
</RelativeLayout>

上面的布局会给你这个:

在此处输入图像描述

于 2012-09-10T14:08:00.310 回答