0

我的布局有问题。我想要一个水平文件,每行有两行:

这类似于我想要得到的东西:

在此处输入图像描述

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

<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:orientation="horizontal"
  android:gravity="center"

>

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


    <ImageView android:id="@+id/takeBike" 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="8dip" 
        android:layout_marginBottom="8dip"
        android:layout_marginLeft="20dip"
        android:src="@drawable/flecha_1"
        android:background="@null"/>

    <ImageView android:id="@+id/returnBike" 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="8dip" 
        android:layout_marginBottom="8dip"
        android:layout_marginLeft="20dip"
        android:src="@drawable/flecha_2"
        android:background="@null"/>

</LinearLayout>

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


    <TextView android:id="@+id/takeTime" 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="8dip" 
        android:layout_marginBottom="8dip"
        android:layout_marginLeft="20dip"
    />

    <TextView android:id="@+id/returnTime" 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="8dip" 
        android:layout_marginBottom="8dip"
        android:layout_marginLeft="20dip"
    />

</LinearLayout>

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


    <TextView android:id="@+id/parkingTake" 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="8dip" 
        android:layout_marginBottom="8dip"
        android:layout_marginLeft="20dip"
    />

    <TextView android:id="@+id/parkingReturn" 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="8dip" 
        android:layout_marginBottom="8dip"
        android:layout_marginLeft="20dip"
    />

</LinearLayout>


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


    <TextView android:id="@+id/useTime" 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="8dip" 
        android:layout_marginBottom="8dip"
        android:layout_marginLeft="20dip"
    />

    <TextView android:id="@+id/cost" 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="8dip" 
        android:layout_marginBottom="8dip"
        android:layout_marginLeft="20dip"
    />

</LinearLayout>

但我得到的是:

在此处输入图像描述

错误在哪里?

4

4 回答 4

2

Android 平台针对这种情况有一个特定的布局,TableLayout

您使用 TableLayout 的布局:

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:stretchColumns="1">

    <TableRow>

        <ImageView android:id="@+id/takeBike" 
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_marginTop="8dip" 
               android:layout_marginBottom="8dip"
               android:layout_marginLeft="20dip"
               android:src="@drawable/flecha_1"
               android:background="@null"/>

         <TextView android:id="@+id/takeTime" 
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_marginTop="8dip" 
               android:layout_marginBottom="8dip"
               android:layout_marginLeft="20dip"/>

         <TextView android:id="@+id/parkingTake" 
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_marginTop="8dip" 
               android:layout_marginBottom="8dip"
               android:layout_marginLeft="20dip"/>

        <TextView android:id="@+id/useTime" 
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
               android:layout_marginTop="8dip" 
               android:layout_marginBottom="8dip"
               android:layout_marginLeft="20dip"/>

    </TableRow>

    <TableRow>

        <ImageView android:id="@+id/returnBike" 
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="8dip" 
            android:layout_marginBottom="8dip"
            android:layout_marginLeft="20dip"
            android:src="@drawable/flecha_2"
            android:background="@null"/>

        <TextView android:id="@+id/returnTime" 
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="8dip" 
            android:layout_marginBottom="8dip"
            android:layout_marginLeft="20dip"/>

        <TextView android:id="@+id/parkingReturn" 
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="8dip" 
            android:layout_marginBottom="8dip"
            android:layout_marginLeft="20dip"/>

        <TextView android:id="@+id/cost" 
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="8dip" 
            android:layout_marginBottom="8dip"
            android:layout_marginLeft="20dip"/>



    </TableRow>
</TableLayout>
于 2013-03-01T13:24:11.927 回答
1

抱歉,伙计,我感到很懒,所以没有尝试在您的代码中找到问题,而是为您编写了正确的问题。干得好:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="70dp"
    android:background="#1E90FF"
    android:orientation="horizontal" >

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_margin="5dp"
        android:background="#87CEFA"
        android:orientation="vertical" >

        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="wrap_content"
            android:layout_height="30dp"
            android:src="@android:drawable/ic_media_previous" />

        <ImageView
            android:id="@+id/imageView2"
            android:layout_width="wrap_content"
            android:layout_height="30dp"
            android:src="@android:drawable/ic_media_next" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_margin="5dp"
        android:background="#87CEFA"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="30dp"
            android:gravity="center_vertical"
            android:singleLine="true"
            android:text="Medium Text"
            android:textAppearance="?android:attr/textAppearanceMedium" />

        <TextView
            android:id="@+id/textView2"
            android:layout_width="wrap_content"
            android:layout_height="30dp"
            android:gravity="center_vertical"
            android:singleLine="true"
            android:text="Medium Text"
            android:textAppearance="?android:attr/textAppearanceMedium" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_margin="5dp"
        android:background="#87CEFA"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/textView3"
            android:layout_width="wrap_content"
            android:layout_height="30dp"
            android:gravity="center_vertical"
            android:singleLine="true"
            android:text="Medium Text"
            android:textAppearance="?android:attr/textAppearanceMedium" />

        <TextView
            android:id="@+id/textView4"
            android:layout_width="wrap_content"
            android:layout_height="30dp"
            android:gravity="center_vertical"
            android:singleLine="true"
            android:text="Medium Text"
            android:textAppearance="?android:attr/textAppearanceMedium" />
    </LinearLayout>

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_margin="5dp"
        android:background="#87CEFA"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/textView5"
            android:layout_width="wrap_content"
            android:layout_height="30dp"
            android:gravity="center_vertical"
            android:singleLine="true"
            android:text="Medium Text"
            android:textAppearance="?android:attr/textAppearanceMedium" />

        <TextView
            android:id="@+id/textView6"
            android:layout_width="wrap_content"
            android:layout_height="30dp"
            android:gravity="center_vertical"
            android:singleLine="true"
            android:text="Medium Text"
            android:textAppearance="?android:attr/textAppearanceMedium" />
    </LinearLayout>

</LinearLayout>

请查看您的代码出了什么问题。只是为了更快地回复,我一遍又一遍地复制粘贴样式,您应该在样式中指定并使用它,遵循指南,从长远来看,它会对您有所帮助。PFB 图形布局的屏幕截图: 截屏

于 2013-03-01T11:52:52.657 回答
1

使用嵌套布局,例如

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


    <LinearLayout 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal" 
    >


 <LinearLayout 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical" 
    android:layout_weight=".25">


  <Button
        android:id="@+id/play_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="left" />

    <Button
        android:id="@+id/stop_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="right" />

</LinearLayout>

 <LinearLayout 
   android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" 
    android:layout_weight=".25">


  <TextView
        android:id="@+id/play_button"
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:text="12 02 14:07"
        android:layout_weight=".5"/>

    <TextView
        android:id="@+id/stop_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="12 02 14:07" />

</LinearLayout>

 <LinearLayout 
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" 
    android:layout_weight=".25">


  <TextView
        android:id="@+id/play_button"
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:text="12 02 14:07"
        android:layout_weight=".5"/>

    <TextView
        android:id="@+id/stop_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="12 02 14:07" />

</LinearLayout>
<LinearLayout 
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" 
    android:layout_weight=".25">


  <TextView
        android:id="@+id/play_button"
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:text="12 02 14:07"
        android:layout_weight=".5"/>

    <TextView
        android:id="@+id/stop_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="12 02 14:07" />

</LinearLayout>
</LinearLayout>

</LinearLayout>
于 2013-03-01T11:43:53.823 回答
1

删除android:gravity="center"布局中的标签,我认为会很好。

于 2013-03-01T11:52:15.527 回答