0

我正在为 Android 设备实现一个简单的预订系统。我需要有一个包含每周 7 天和从早上 7 点到晚上 8 点小时的表格的活动,我希望能够为每个单元格添加一些文本。我的草稿是这样的: 在此处输入图像描述

我的问题是我使用表格布局来执行此操作,这导致了这种情况,我的布局代码如下所示:

<!--7:00-->
    <TableRow
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">

        <TextView
            android:layout_column="0"
            android:layout_marginBottom="1dp"
            android:layout_marginRight="1dp"
            android:layout_marginTop="1dp"
            android:width="40sp"
            android:text="\n7:00"
            android:textSize="18sp" />

        <TextView
            android:id="@+id/textview_1_1"
            android:layout_width="100sp"
            android:layout_height="wrap_content"
            android:layout_column="1"
            android:textAlignment="center" />

        <TextView
            android:id="@+id/textview_2_1"
            android:layout_width="100sp"
            android:layout_height="wrap_content"
            android:layout_column="2"
            android:textAlignment="center"/>

        <TextView
            android:id="@+id/textview_3_1"
            android:layout_width="100sp"
            android:layout_height="wrap_content"
            android:layout_column="3"
            android:textAlignment="center"/>

        <TextView
            android:id="@+id/textview_4_1"
            android:layout_width="100sp"
            android:layout_height="wrap_content"
            android:layout_column="4"
            android:textAlignment="center"/>

        <TextView
            android:id="@+id/textview_5_1"
            android:layout_width="100sp"
            android:layout_height="wrap_content"
            android:layout_column="5"
            android:textAlignment="center"/>

        <TextView
            android:id="@+id/textview_6_1"
            android:layout_width="100sp"
            android:layout_height="wrap_content"
            android:layout_column="6"
            android:textAlignment="center"/>

        <TextView
            android:id="@+id/textview_7_1"
            android:layout_width="100sp"
            android:layout_height="wrap_content"
            android:layout_column="7"
            android:textAlignment="center"/>
    </TableRow>

如您所见,要使用这些 TextView 中的任何一个,我必须实现 textview_1_1、textview_1_2 等等。我确信必须有更优雅的方式来做到这一点。你们中的一些人可以帮帮我吗?非常感谢!

4

1 回答 1

1

此类问题的最佳实践是使用带有自定义项目的列表视图(在本例中为编辑文本项目)来实现看到这个 或只是查找“列表视图自定义项目”

然后通过您的列表视图对象,您可以访问每个项目(getItem())并包含信息(在您的情况下为edittext> gettext())

于 2018-11-04T22:59:47.553 回答