1

我正在尝试实现这个用户界面

布局

通过布局。但是在对齐中遇到问题。除此之外,一般来说,使用 LinearLayout 或 RelativeLayout 的最佳方式是什么?得到许多推荐两者的参考。

这是我的xml:

 <?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:orientation="vertical" >

<ImageView
    android:id="@+id/imageView1"
    android:layout_width="match_parent"
    android:layout_height="400dp"

    android:src="@drawable/splash_landscape" />

<TextView
    android:layout_width="301dp"
    android:layout_height="100dp"
    android:text="Product Name" />

<TextView
    android:id="@+id/textView1"
    android:layout_width="323dp"
    android:layout_height="82dp"
    android:text="TextView" />

<LinearLayout 
     android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView android:layout_width="300dp"
android:layout_height="100dp"
android:text="Product Name"
></TextView>
        <RelativeLayout >
    <TextView android:layout_width="200dp"
android:layout_height="100dp"
android:text="Product Name"
></TextView>

</RelativeLayout>
<RelativeLayout >
    <TextView android:layout_width="200dp"
android:layout_height="100dp"
android:text="Product Name"
></TextView>
    <TextView android:layout_width="200dp"
android:layout_height="100dp"
android:text="Product Name"
></TextView>

</RelativeLayout>



<ImageView
    android:id="@+id/imageView2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/launcher" />

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

2 回答 2

3

我已经尝试了上述布局,并且接近了它。下面是xml文件和屏幕截图

<?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:orientation="vertical" >

    <LinearLayout
        android:id="@+id/linearLayout1"
        android:layout_width="match_parent"
        android:layout_height="60dip"
        android:orientation="vertical" android:background="#c0c0c0">

        <Button
            android:id="@+id/button8"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:text="Button" />

    </LinearLayout>

    <RelativeLayout
        android:id="@+id/relativeLayout1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" android:layout_marginTop="5dip">

        <LinearLayout
            android:id="@+id/linearLayout2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="vertical" android:layout_toLeftOf="@+id/linearLayout3" android:layout_alignParentLeft="true" android:background="#fff">
 <LinearLayout
            android:id="@+id/linearLayout4"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical" android:layout_toLeftOf="@+id/linearLayout3" android:layout_alignParentLeft="true" android:background="#fff" android:layout_marginTop="5dip">

     <Button
         android:id="@+id/button3"
         android:layout_width="fill_parent"
         android:layout_height="wrap_content"
         android:text="Button" />

        </LinearLayout>
         <LinearLayout
            android:id="@+id/linearLayout5"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" android:layout_toLeftOf="@+id/linearLayout3" android:layout_alignParentLeft="true" android:background="#fff" android:layout_marginTop="5dip">
 <LinearLayout
            android:id="@+id/linearLayout7"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" android:layout_toLeftOf="@+id/linearLayout3" android:layout_alignParentLeft="true" android:background="#fff" android:layout_weight="1">

     <Button
         android:id="@+id/button1"
         android:layout_width="fill_parent"
         android:layout_height="wrap_content"
         android:text="Button" />

        </LinearLayout>
         <LinearLayout
            android:id="@+id/linearLayout8"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" android:layout_toLeftOf="@+id/linearLayout3" android:layout_alignParentLeft="true" android:background="#fff" android:layout_weight="1">

             <Button
                 android:id="@+id/button2"
                 android:layout_width="fill_parent"
                 android:layout_height="wrap_content"
                 android:text="Button" />

        </LinearLayout>
        </LinearLayout>
         <LinearLayout
            android:id="@+id/linearLayout6"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" android:layout_toLeftOf="@+id/linearLayout3" android:layout_alignParentLeft="true" android:background="#fff" android:layout_marginTop="5dip">
 <LinearLayout
            android:id="@+id/linearLayout9"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" android:layout_toLeftOf="@+id/linearLayout3" android:layout_alignParentLeft="true" android:background="#fff" android:layout_weight="1">

     <Button
         android:id="@+id/button4"
         android:layout_width="fill_parent"
         android:layout_height="wrap_content"
         android:text="Button" />

        </LinearLayout>
         <LinearLayout
            android:id="@+id/linearLayout10"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal" android:layout_toLeftOf="@+id/linearLayout3" android:layout_alignParentLeft="true" android:background="#fff" android:layout_weight="1">

             <Button
                 android:id="@+id/button5"
                 android:layout_width="fill_parent"
                 android:layout_height="wrap_content"
                 android:text="Button" />

        </LinearLayout>
        </LinearLayout>
        </LinearLayout>

        <LinearLayout
            android:id="@+id/linearLayout3"
            android:layout_width="70dip"
            android:layout_height="wrap_content"
            android:orientation="vertical" android:layout_alignParentRight="true" android:background="#c0c0c0" android:layout_alignBottom="@+id/linearLayout2" android:layout_alignTop="@+id/linearLayout2">

            <Button
                android:id="@+id/button6"
                android:layout_width="wrap_content"
                android:layout_height="fill_parent"
                android:text="Button" />

        </LinearLayout>

    </RelativeLayout>

  <LinearLayout
      android:id="@+id/linearLayout11"
      android:layout_width="fill_parent"
      android:layout_height="wrap_content"
      android:layout_alignParentRight="true"
      android:background="#c0c0c0"
      android:orientation="horizontal" android:layout_marginTop="5dip">

            <Button
                android:id="@+id/button6"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:text="Button" android:layout_weight="1"/>

            <Button
                android:id="@+id/button7"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:text="Button" android:layout_weight="1"/>

        </LinearLayout>
          <LinearLayout
            android:id="@+id/linearLayout12"
            android:layout_width="fill_parent"
            android:layout_height="30dip"
            android:orientation="vertical" android:layout_alignParentRight="true" android:background="#c0c0c0" android:layout_marginTop="5dip">

            <Button
                android:id="@+id/button6"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:text="Button" />

        </LinearLayout>
          <LinearLayout
            android:id="@+id/linearLayout13"
            android:layout_width="fill_parent"
            android:layout_height="60dip"
            android:orientation="vertical" android:layout_alignParentRight="true" android:background="#c0c0c0" android:layout_marginTop="5dip">

            <Button
                android:id="@+id/button6"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:text="Button" />

        </LinearLayout>
</LinearLayout>

在此处输入图像描述

于 2012-10-05T11:18:22.697 回答
2

我肯定会RelativeLayout用作你的根。below然后使用,toRightOf等来排列所有视图会容易得多alignParentLeft..

于 2012-10-05T11:01:26.067 回答