Android如何在文字检视列上设定自订宽度

时间:2018-08-16 15:27:29

标签: android xml android-layout xamarin

所以我创建了一个包含3个textview的行的布局。我要实现的目标是使第一个文本视图比其他两个文本视图宽很多。

我尝试将layout_width设置为32dp等值,但这似乎也会影响其他文本视图和高度。

这就是现在的样子 enter image description here

这是代码

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/linearLayout1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content">
    <TextView
        android:id="@+id/colum1"
        android:layout_width="62dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:gravity="center"
        android:layout_gravity="center_vertical"
        android:text="TextView"
        android:textSize="18sp"
        android:textColor="#ff000000" />
    <TextView
        android:id="@+id/colum2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:gravity="center"
        android:layout_gravity="center_vertical"
        android:text="TextView"
        android:textSize="18sp"
        android:textColor="#ff000000" />
    <TextView
        android:id="@+id/colum3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:gravity="center"
        android:layout_gravity="center_vertical"
        android:text="TextView"
        android:textSize="18sp"
        android:textColor="#ff000000" />
</LinearLayout>

我希望让textview colum1占据前两个文本视图的宽度,而后两个成为一个宽度。

enter image description here

2 个答案:

答案 0 :(得分:2)

尝试一下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/linearLayout1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
    <TextView
        android:id="@+id/colum1"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="2"
        android:gravity="center"
        android:layout_gravity="center_vertical"
        android:text="TextView"
        android:textSize="18sp"
        android:textColor="#ff000000" />
    <TextView
        android:id="@+id/colum2"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:gravity="center"
        android:layout_gravity="center_vertical"
        android:text="TextView"
        android:textSize="18sp"
        android:textColor="#ff000000" />
    <TextView
        android:id="@+id/colum3"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:gravity="center"
        android:layout_gravity="center_vertical"
        android:text="TextView"
        android:textSize="18sp"
        android:textColor="#ff000000" />
</LinearLayout>

这是结果:

enter image description here

更多信息here

答案 1 :(得分:1)

您将要从第一个TextView除去权重,或者将其权重设置为2。在此处查看Android文档的更多信息:https://developer.android.com/guide/topics/ui/layout/linear