Android-两个文本视图中心三明治



我在一个表布局中有两个文本视图,我想将两个文本图居中。它在水平方向上有效,但在垂直方向上无效。

它怎么了?

<TableRow android:id="@+id/TableRow1">
        <TextView
            android:id="@+id/Feld1"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:typeface="sans"
            android:layout_weight="1"
            android:gravity="center_horizontal|center_vertical"
            android:textSize="40sp" />
</TableRow>
<TableRow android:id="@+id/TableRow2" >
        <TextView
            android:id="@+id/Feld2"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_weight="1"
            android:typeface="serif"
            android:gravity="center_horizontal|center_vertical"
            android:textSize="50sp" />
</TableRow>

使用表布局时,不需要任何这些布局属性。尝试删除所有这些:

<TableRow android:id="@+id/TableRow1" >
    <TextView
        android:id="@+id/Field1"
        android:layout_gravity="center"
        android:typeface="sans"
        android:gravity="center_horizontal|center_vertical"
        android:textSize="40sp" />
</TableRow>
<TableRow android:id="@+id/TableRow2" >
    <TextView
        android:id="@+id/Field2"
        android:layout_gravity="center"
        android:typeface="serif"
        android:gravity="center_horizontal|center_vertical"
        android:textSize="50sp" />
</TableRow>

试试这个。。

<!-- android:gravity="center_horizontal" will put the text at center of row horizontally -->
<TableRow
    android:id="@+id/TableRow1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center_horizontal">
    <TextView
        android:id="@+id/Feld1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"            
        android:background="@color/bluelight"
        android:text="sample"
        android:textSize="20sp"
        android:typeface="sans" />
</TableRow>
<!-- Divider/ Separator -->
<TableRow
    android:layout_width="match_parent"
    android:layout_height="wrap_content" >
    <View
        android:layout_height="2dip"
        android:background="@color/grey" />
</TableRow>
<!-- android:gravity="center_horizontal" will put the text at center of row horizontally -->
<TableRow
    android:id="@+id/TableRow2"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center_horizontal" >
    <TextView
        android:id="@+id/Feld2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="@color/bluelight"            
        android:text="sample"
        android:textSize="20sp"
        android:typeface="serif" />
</TableRow>

最新更新