替代Android中的嵌套权重?

时间:2014-01-14 16:03:43

标签: android android-layout

我想显示11行,每行包含4个TextView个项目,在一个屏幕上总共有44个文本视图。

我不希望不同手机的屏幕尺寸差异导致问题,所以我想到使用嵌套权重。我有一个水平方向的LinearLayout,其中包含四个TextView个项目,其权重已调整,因此它们可以在一行中正确显示在屏幕上。我有11个这样的LinearLayout项目嵌套在父LinearLayout内,垂直方向,我会调整内LinearLayout项的权重,以便它们全部适合屏幕

但是,这似乎不起作用。它说嵌套权重对性能不利。

如何解决此问题?

2 个答案:

答案 0 :(得分:1)

如果要动态添加文本视图,可以使用自定义适配器获取 listview 。 如果您希望它是静态的,那么您可以选择 tablelayout ,每个表行每个具有四个textview。如果您不满意,我也可以给您一个示例布局..

示例TableLayout                            

答案 1 :(得分:1)

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

    <TableRow>
      <!-- Column 1 -->
      <TextView
         android:id="@+id/tbl_txt1"
         android:layout_width="0dip"
         android:layout_height="wrap_content"
         android:background="@color/red"
         android:textColor="@color/white"
         android:padding="10dip"
         android:layout_margin="4dip"
         android:layout_weight="1"
         android:text="Column 1" />

      <!-- Column 2 -->
      <TextView
         android:id="@+id/tbl_txt2"
         android:layout_width="0dip"
         android:layout_height="wrap_content"
         android:background="@color/red"
         android:textColor="@color/white"
         android:padding="10dip"
         android:layout_margin="4dip"
         android:layout_weight="1"
         android:text="Column 2" />

      <!-- Column 3 -->
      <TextView
         android:id="@+id/tbl_txt3"
         android:layout_width="0dip"
         android:layout_height="wrap_content"
         android:background="@color/red"
         android:textColor="@color/white"
         android:padding="10dip"
         android:layout_margin="4dip"
         android:layout_weight="1"
         android:text="Column 3" />
    </TableRow>
</TableLayout>