将两个TextViews放在一个聊天气泡中

时间:2019-05-17 09:43:27

标签: android android-layout

我正在为我的应用程序构建MessageActivity UI,我想在聊天气泡中放入两个TextView,即用户的用户名和消息,并且希望聊天气泡同时覆盖两个TextView。但是聊天气泡只会随着消息的长度而扩大,从而使视图变得混乱

message ui

因此,如果用户名太长,它将不在聊天气泡中

这是我的布局

<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content">


<TextView
    android:id="@+id/text_message_body"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margin="10dp"
    android:layout_marginTop="8dp"
    android:background="@drawable/bubble_out"
    android:maxWidth="340dp"
    android:paddingBottom="10dp"
    android:paddingLeft="10dp"
    android:paddingRight="10dp"
    android:paddingTop="18dp"
    android:text="hi man, how are you?"
    android:textColor="#fcfbfb"
    android:textSize="17sp"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="0.0"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent" />

<TextView
    android:id="@+id/text_message_time"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginLeft="4dp"
    android:text="11:40"
    android:textColor="@android:color/background_light"
    android:textSize="10sp"
    android:visibility="invisible"
    app:layout_constraintBottom_toBottomOf="@+id/text_message_body"
    app:layout_constraintLeft_toRightOf="@+id/text_message_body" />

<ImageView
    android:id="@+id/recieved_image"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginStart="8dp"
    android:layout_marginTop="8dp"
    android:adjustViewBounds="true"
    android:maxHeight="100dp"
    android:maxWidth="100dp"
    android:padding="0dp"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent" />

<TextView
    android:id="@+id/grp_user_name"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginStart="8dp"
    android:paddingRight="40dp"
    android:text="@string/display_name"
    android:textColor="#c9ce41"
    app:layout_constraintStart_toStartOf="@+id/text_message_body"
    app:layout_constraintTop_toTopOf="@+id/text_message_body" />

</android.support.constraint.ConstraintLayout>

1 个答案:

答案 0 :(得分:1)

您仅将背景设置为text_message_body,将其从此处删除,并将其设置为主要的父容器布局。