我正在为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等。 我确信必须有更优雅的方法来做到这一点。你们中的一些人可以帮我吗? 非常感谢!
答案 0 :(得分:1)
此类问题的最佳实践是将列表视图与自定义项目(在本例中为edittext项目)一起使用 有关实现的信息,请参见this或仅查找“列表视图自定义项”
然后通过您的listview对象,您可以访问每个项目(getItem())并包含信息(在您的情况下为edittext> gettext()的值)