gpt4 book ai didi

android - 当 TextView 与另一个 TextView 重叠时剪切文本并添加省略号

转载 作者:行者123 更新时间:2023-12-05 07:54:06 25 4
gpt4 key购买 nike

我正在尝试构建一个类似于 Android 版 Facebook Messenger 中的聊天单元格布局。我能够轻松地复制此布局。我在名称中添加了一个 maxLine 参数,以防它真的很长,如果是这种情况,它将显示省略号。问题是,如果这个人的名字真的很长,省略号将不会出现,我的时间戳将是 2 个字符长 x 2 个字符 TextView that shows the timestamp .我也在使用 CirceImageView 库。

Build.graddle

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:22.2.1'
compile 'com.android.support:design:22.2.1'
compile 'de.hdodenhof:circleimageview:1.3.0'
}

layout.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal" android:layout_width="match_parent"
android:layout_height="72dp"
android:paddingLeft="16dp"
android:paddingRight="16dp"
android:paddingTop="8dp"
android:paddingBottom="8dp">
<de.hdodenhof.circleimageview.CircleImageView
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/profile_image"
android:layout_width="56dp"
android:layout_height="56dp"
android:src="@drawable/bob"
android:layout_marginRight="16dp"
app:border_width="0dp"
app:border_color="#FF000000"/>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_toStartOf="@id/lblMessageTime"
android:text="Person name is lonnnnnnnnnnnnnng"
android:id="@+id/person_name"
android:textSize="15sp"
android:textColor="#000000"
android:layout_toLeftOf="@id/textTime"
android:textStyle="bold"
android:ellipsize="end"
android:maxLines="1" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingLeft="8dp"
android:text="23:00"
android:layout_weight="1"
android:layout_alignParentRight="true"
android:layout_alignBaseline="@id/person_name"
android:id="@+id/lblMessageTime"/>
</LinearLayout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/grayAddSessionButton"
android:id="@+id/textMessage"
android:text="This is a message"/>
</LinearLayout>
</LinearLayout>

感谢您的帮助!

最佳答案

如果你想避免重叠,你要么不要使用 RelativeLayout 作为你的 TextViews 的容器,要么不要为 android 使用 wrap_content person_name TextView 的 :layout_width 但使其固定宽度(即“200dp”)或扩展 TextView 类并使其禁止任何拉伸(stretch)超过一定宽度。

关于android - 当 TextView 与另一个 TextView 重叠时剪切文本并添加省略号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31734614/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com