如何在Android中对齐视图

时间:2013-12-03 13:15:47

标签: android user-interface fragment

这是我的代码:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <TabHost
        android:id="@android:id/tabhost"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="vertical" >

            <TabWidget
                android:id="@android:id/tabs"
                android:layout_width="match_parent"
                android:layout_height="wrap_content" >
            </TabWidget>

            <FrameLayout
                android:id="@android:id/tabcontent"
                android:layout_width="match_parent"
                android:layout_height="match_parent" >

                <LinearLayout
                    android:id="@+id/photos"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:orientation="vertical" >

                    <TextView
                        android:id="@+id/textView1"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:text="TextView" />

                    <ImageView
                        android:id="@+id/imageButton1"
                        android:layout_width="170dp"
                        android:layout_height="250dp"
                        android:layout_marginTop="50dp"
                        android:src="@drawable/ds" />

                </LinearLayout>

                <LinearLayout
                    android:id="@+id/map"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:orientation="vertical" >
                </LinearLayout>

                <LinearLayout
                    android:id="@+id/navigation"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:orientation="vertical" >
                </LinearLayout>
            </FrameLayout>
        </LinearLayout>
    </TabHost>

</RelativeLayout>

我希望如下所示:

GUI

你能告诉我,我该如何调整这些元素? Linear中的内容应该是Relative?中的内容 我将此GUI用于min API 14

2 个答案:

答案 0 :(得分:1)

您的布局可能应该是这样,请添加标签布局

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >

        <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="match_parent"
            android:layout_height="match_parent" >

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical" >

                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:orientation="horizontal" >

                    <LinearLayout
                        android:id="@+id/photos"
                        android:layout_width="0dp"
                        android:layout_height="wrap_content"
                        android:layout_weight="1"
                        android:orientation="vertical" >

                        <TextView
                            android:id="@+id/textView1"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="TextView" />

                        <ImageView
                            android:id="@+id/imageButton1"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:src="@drawable/ic_launcher" />
                    </LinearLayout>

                    <LinearLayout
                        android:id="@+id/map"
                        android:layout_width="0dp"
                        android:layout_height="match_parent"
                        android:layout_weight="1"
                        android:background="@color/green"
                        android:orientation="vertical" >

                        <TextView
                            android:id="@+id/textView1"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="TextView" />
                    </LinearLayout>
                </LinearLayout>

                <LinearLayout
                    android:id="@+id/navigation"
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:background="@color/yellow"
                    android:orientation="vertical" >

                       <TextView
                            android:id="@+id/textView1"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:text="ajdkad  kadka d  aldjad la dhakd akd akd akdhkadh ad hakdh ad a" />
                </LinearLayout>
            </LinearLayout>
        </FrameLayout>
    </LinearLayout>

</RelativeLayout>

答案 1 :(得分:0)

相对布局类似于下拉式布局。意味着您可以随时将小部件放在该布局上。

就像 LinearLayout 具有固定类型的布局。它具有垂直和水平方向。您可以根据需要将小部件添加到此布局中。

有关详情,请访问this