一行中有多个文本视图

4

这是一个非常简单的问题,但我不知道该如何做。 我有一个列表视图适配器和一个XML行来显示每一行。 我想在单行中显示3个文本视图。 这是我的XML代码:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent">
  <TextView
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/txtElement"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="24px"
        android:textColor="#000000">
    </TextView>
      <TextView
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/txtElement2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="24px"
        android:textColor="#000000">
    </TextView>
      <TextView
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/txtElement3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="24px"
        android:textColor="#000000">
    </TextView>

</LinearLayout>

我希望文本显示为以下格式:

txt1 txt2 txt3

这是我的适配器代码(但我想问题可能在XML中):

    TextView tv = (TextView) row.findViewById(R.id.txtElement);
    tv.setText(currentElement.getTitle());          

    TextView tv2 = (TextView) row.findViewById(R.id.txtElement2);
    tv2.setText(currentElement.getAuthor());            

    TextView tv3 = (TextView) row.findViewById(R.id.txtElement3);
    tv3.setText(""+currentElement.getNumPost());

提前致谢。

2个回答

7

更改LinearLayout的方向android:orientation="horizontal"

编辑

如果我想将它显示为:txt1在一行,txt2和txt3在第二行怎么办?

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content" >

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_marginLeft="5dp"
        android:layout_marginTop="5dp"
        android:text="1" />

    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textView1"
        android:layout_below="@+id/textView1"
        android:text="2" />

    <TextView
        android:id="@+id/textView3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/textView1"
        android:layout_marginLeft="5dp"
        android:layout_toRightOf="@+id/textView2"
        android:text="3" />

</RelativeLayout>

如果我想这样显示它,该怎么办:txt1在一行,txt2 txt3在第二行? - Davis
我已更新我的答案:txt1在第一行,txt2 txt3在第二行。 - Artyom Kiriliyk

1
你需要做的就是将方向从垂直改为水平。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接