【问题标题】:XML Layouting for a textview and 2 imageviews一个文本视图和 2 个图像视图的 XML 布局
【发布时间】:2017-12-07 05:53:00
【问题描述】:

我需要用一个单行 TextView 和 2 个 ImageViews 进行布局。它们需要按以下顺序排列:TextView | ImageView1 | [剩余空间] | ImageView2

所有这一切的约束是,如果 TextView 中的文本溢出,第一个 ImageView 会被推送并粘在第二个,溢出的文本会被修剪并显示为省略号。像这样的东西:Trimmed TextView... | ImageView1 | ImageView2

为了更清楚地说明这些实例,这里有一个说明:

应该如何为这个特定用例进行布局?

【问题讨论】:

  • 检查我的答案

标签: android android-layout textview imageview android-xml


【解决方案1】:

试试这个:

输出 1:

输出2:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/colorWhite"
    android:orientation="vertical">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

        <RelativeLayout 
            android:id="@+id/layout_message"
            android:layout_width="0dp"
            android:layout_weight="1"
            android:layout_height="wrap_content">

            <TextView
                android:id="@+id/tv_message"
                style="@style/TextAppearance.AppCompat.Body1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:paddingRight="30dp"
                android:ellipsize="end"
                android:lines="1"
                android:text="Hello Mike bla bla bla  bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla " />

            <ImageView
                android:id="@+id/tv_msg_time"
                android:layout_width="20dp"
                android:layout_height="20dp"
                android:src="@drawable/done_all"
                android:layout_alignRight="@+id/tv_message"
                android:textColor="@android:color/black"
                android:textSize="10sp" />

        </RelativeLayout>

        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="0.1"
            android:gravity="end">

            <ImageView
                android:layout_width="20dp"
                android:layout_height="20dp"
                android:src="@drawable/job_like" />

        </LinearLayout>
    </LinearLayout>
</LinearLayout>

【讨论】:

  • 您好,感谢您花时间制定答案;然而,在蜱和心脏之间出现了空白空间。我希望每当显示省略号时,滴答声和心脏会一个接一个地立即呈现。
  • 好的,我会努力的。
  • @Sagar 试试我编辑的答案。如果还有其他问题,请告诉我。
  • 谢谢,有帮助!
猜你喜欢
  • 1970-01-01
  • 2014-08-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-08-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多