具有相同行高的两个表视图 (Android)

Two tableviews with same row heights (Android)

我有两个 table 视图。一个用作标题列(静态),另一个用作数据。 (线性布局,水平)。

我需要以某种方式读取数据 table 中每一行的高度,并使标题 table 处的行处于相同的高度...

使用下面的代码读取您的视图高度:

 view.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
                                @Override
                                public void onGlobalLayout() {
                                //TO remove listener
                                    view.getViewTreeObserver().removeOnGlobalLayoutListener(this);
                                int height = view.getHeight();
                                int width = view.getWidth();
                                }
                            });

根据其他视图的高度来控制高度不是一个好主意。最好使用 Table 布局

示例

<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:stretchColumns="1">
    <TableRow>
        <TextView
            android:text="@string/table_layout_4_open"
            android:padding="3dip" />
        <TextView
            android:text="@string/table_layout_4_open_shortcut"
            android:gravity="right"
            android:padding="3dip" />
    </TableRow>

    <TableRow>
        <TextView
            android:text="@string/table_layout_4_save"
            android:padding="3dip" />
        <TextView
            android:text="@string/table_layout_4_save_shortcut"
            android:gravity="right"
            android:padding="3dip" />
    </TableRow>
</TableLayout>

输出

您可以用类似的方式实施