平板电脑的布局设计

时间:2014-05-02 04:24:26

标签: android layout tablet

我试图设计平板电脑的布局。我希望每个控件在彼此之间具有相等的间距。所有这些如何正确对齐?抱歉,我无法附上图片,因为我没有10个声誉:(。请帮忙

这是布局代码,父布局是线性布局。

<RelativeLayout
    android:layout_width="fill_parent"
    android:layout_height="125dp"
    android:background="#517398"
    >

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="125dp"
        android:layout_marginBottom="8dp"
        android:layout_marginLeft="30dp"
        android:orientation="horizontal" >

        <ImageButton
            android:id="@+id/image_agenda"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:layout_weight="1.0"
            android:src="@drawable/agenda_view" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="125dp"
        android:layout_centerHorizontal="true"
        android:orientation="horizontal" >

        <TextView
            android:layout_width="1dp"
            android:layout_height="fill_parent"
            android:layout_marginRight="40dp"
            android:background="#000000" />

        <ImageButton
            android:id="@+id/image_month"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1.0"
            android:src="@drawable/month_view" />

        <TextView
            android:layout_width="1dp"
            android:layout_height="fill_parent"
            android:layout_marginLeft="40dp"
            android:background="#000000" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="125dp"
        android:layout_alignParentRight="true"
        android:layout_marginRight="30dp"
        android:orientation="horizontal" >

        <ImageButton
            android:id="@+id/image_day"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:layout_weight="1.0"
            android:src="@drawable/day_view" />
    </LinearLayout>
</RelativeLayout>

3 个答案:

答案 0 :(得分:0)

// try this way,hope this will help you...
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center">


    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="125dp">

        <LinearLayout
            android:layout_width="0dp"
            android:layout_weight="1"
            android:layout_height="match_parent"
            android:gravity="center">

            <ImageButton
                android:id="@+id/image_agenda"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:adjustViewBounds="true"
                android:src="@drawable/ic_launcher" />
        </LinearLayout>
        <TextView
            android:layout_width="1dp"
            android:layout_height="match_parent"
            android:background="#000000" />
        <LinearLayout
            android:layout_width="0dp"
            android:layout_weight="1"
            android:layout_height="match_parent"
            android:gravity="center">

            <ImageButton
                android:id="@+id/image_month"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:adjustViewBounds="true"
                android:src="@drawable/ic_launcher" />
        </LinearLayout>
        <TextView
            android:layout_width="1dp"
            android:layout_height="match_parent"
            android:background="#000000" />
        <LinearLayout
            android:layout_width="0dp"
            android:layout_weight="1"
            android:layout_height="match_parent"
            android:gravity="center">

            <ImageButton
                android:id="@+id/image_day"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:adjustViewBounds="true"
                android:src="@drawable/ic_launcher" />
        </LinearLayout>
    </LinearLayout>

</LinearLayout>

答案 1 :(得分:0)

请检查下面我要测试的示例布局代码 我不知道你正在使用什么目的以及你如何使用中心元素2 textview所以现在我评论说如果你想要那个中心元素所有2 textview和imagebutton具有相等的空间分布然后相同的公式layout_weight你使用我有用于此代码

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout
    android:layout_width="0dp"
    android:layout_height="125dp"
    android:layout_weight="1"
    android:gravity="center"
    android:orientation="horizontal" >

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

<LinearLayout
    android:layout_width="0dp"
    android:layout_height="125dp"
    android:layout_weight="1"
    android:gravity="center"
    android:orientation="horizontal" >

  <!--   <TextView
        android:layout_width="1dp"
        android:layout_height="fill_parent"
        android:layout_marginRight="40dp"
        android:background="#000000" /> -->

    <ImageButton
        android:id="@+id/image_month"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/ic_launcher" />

   <!--  <TextView
        android:layout_width="1dp"
        android:layout_height="fill_parent"
        android:background="#000000" /> -->
</LinearLayout>

<LinearLayout
    android:layout_width="0dp"
    android:layout_height="125dp"
    android:layout_weight="1"
    android:gravity="center"
    android:orientation="horizontal" >

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

如果您有任何疑问,可以问我......

答案 2 :(得分:0)

尝试使用权重属性并避免使用相对布局。将WeightSum定义为父布局,并将权重定义为子项。它适用于平板电脑和手机[肖像]

如果你试图划分空间acc。到宽度然后给孩子们宽度= 0dp,如果给高度加倍,那么在使用权重时给孩子们高度为0dp。

代码:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="125dp"
    android:background="#517398"
    android:weightSum="9" >

    <LinearLayout
        android:layout_width="0dp"
        android:layout_height="125dp"
        android:layout_marginBottom="8dp"
        android:paddingLeft="30dp"
        android:layout_weight="3"
        android:orientation="horizontal" >

        <ImageButton
            android:id="@+id/image_agenda"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:layout_weight="1.0"
            android:src="@drawable/agenda_view" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="0dp"
        android:layout_height="125dp"
        android:layout_centerHorizontal="true"
        android:layout_weight="3"
        android:orientation="horizontal" >

        <TextView
            android:layout_width="1dp"
            android:layout_height="fill_parent"
            android:layout_marginRight="40dp"
            android:background="#000000" />

        <ImageButton
            android:id="@+id/image_month"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1.0"
            android:src="@drawable/month_view" />

        <TextView
            android:layout_width="1dp"
            android:layout_height="fill_parent"
            android:layout_marginLeft="40dp"
            android:background="#000000" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="0dp"
        android:layout_height="125dp"
        android:layout_alignParentRight="true"
        android:layout_weight="3"
        android:orientation="horizontal"
        android:paddingRight="30dp" >

        <ImageButton
            android:id="@+id/image_day"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal"
            android:layout_weight="1.0"
            android:src="@drawable/day_view" />
    </LinearLayout>

</LinearLayout>

注意:相对布局不支持重量或WeightSum。