我有一个线性布局,用于带有自定义适配器的列表视图,它包含一个图像和两个文本视图。 我的问题是第一个文本视图长度并不总是相同,所以我不知道如何将每个第二个文本视图对齐到相同的位置。
row.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
<ImageView
android:id="@+id/imageView1"
android:layout_gravity="center"
android:layout_width="48dp"
android:layout_margin="5dp"
android:layout_height="48dp"
android:src="@drawable/ic_launcher" />
<TextView
android:id="@+id/textView1"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="25dp"
android:text="TextView" />
<TextView
android:id="@+id/textView2"
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/txtresultadocolor"
android:textSize="25dp"
android:layout_marginLeft="15dp"
/>
现在这是我的代码,但第二个文本视图总是在变化。 我将不胜感激任何帮助。
答案 0 :(得分:2)
您可以将android:layout_weight="0.3"
提供给第一个TextView
,这会使第二个TextView
附加到一个位置,并且第一个TextView
的大小将根据文本的长度。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">
<ImageView
android:id="@+id/imageView1"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_gravity="center"
android:layout_margin="5dp"
android:src="@drawable/ic_launcher" />
<TextView
android:id="@+id/textView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_weight="0.3"
android:text="TextViewd1391381231283123100"
android:textSize="25dp" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="15dp"
android:text="adfafasdfs"
android:textColor="@color/Red"
android:textSize="25dp" />
答案 1 :(得分:1)
我想这里的问题是android:layout_gravity =“center”。文本视图显示为中心对齐,显示长度将根据文本大小而变化,并且不会对齐到相同的位置。
删除它并将android:layout_marginLeft =“15dp”添加到第一个textview时,两个textview也应该对齐到左边的相同位置。
答案 2 :(得分:0)
要将视图与正确对齐android:layout_gravity="right"
。