【问题标题】:Aligning Content in an Android ListView在 Android ListView 中对齐内容
【发布时间】:2017-11-27 03:21:38
【问题描述】:

我很抱歉这个问题可能在某个地方被问过,但我不知道该如何表达。

我的 Android 应用中有一个 ListView,我想对齐每一行中的内容,以便每个 TextView 与其下方行(左、右和中心)中的相应 TextView 对齐。

这张图就是我要的listview:

因此,左侧 TextView 一直向左对齐,右侧 TextView 一直向右对齐。中心 TextView 对齐,使其始终“开始”在同一个位置(即,它的位置不受左侧 TextView 长度的影响)。

我怎样才能做到这一点?非常感谢

【问题讨论】:

  • 我认为你已经使用水平布局..right
  • 使用表格布局:)

标签: java android xml listview


【解决方案1】:

像下面这样使用.. 我使用了第一个 textview 左侧,第二个中心和第三个是正确的。你可以随心所欲地改变......

 <LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:weightSum="3">

    <TextView
        android:id="@+id/tv_textview"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:gravity="left|center_vertical|center_horizontal"
        android:text="AAP 500" />

    <TextView
        android:id="@+id/tv_textview2"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:gravity="center|center_vertical|center_horizontal"
        android:text="85.65" />
    <TextView
        android:id="@+id/tv_textview3"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:gravity="right|center_vertical|center_horizontal"
        android:text="-3.75(-3.34 %)" />
</LinearLayout>

【讨论】:

    【解决方案2】:

    您需要使用具有水平方向的 LinearLayout,然后对其中的每个 textview 应用权重。这将导致它们各自占据布局的一部分。您可以首先给它们每个权重 1 并从那里进行调整。最右边的文本视图也需要文本右对齐以匹配图片。

    【讨论】:

      【解决方案3】:

      您必须创建自定义 listView,您的 item_row_view.xml 将如下所示

      <?xml version="1.0" encoding="utf-8"?>
      <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:layout_width="match_parent"
          android:layout_height="match_parent"
          android:orientation="vertical">
      
          <TextView
              android:id="@+id/tv_textview"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_alignParentLeft="true"
              android:layout_weight="1"
              android:text="AAP 500"
              android:textAlignment="center" />
      
          <TextView
              android:id="@+id/tv_textview2"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_centerHorizontal="true"
              android:text="85.65"
              android:textAlignment="center" />
      
          <TextView
              android:id="@+id/tv_textview3"
              android:layout_width="wrap_content"
              android:layout_height="wrap_content"
              android:layout_alignParentRight="true"
              android:text="-3.75(-3.34 %)"
              android:textAlignment="center" />
      
      
      </RelativeLayout>
      

      【讨论】:

        猜你喜欢
        • 2012-03-04
        • 2012-07-22
        • 2011-02-22
        • 2018-07-21
        • 1970-01-01
        • 2023-04-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多