【发布时间】:2019-10-14 21:33:10
【问题描述】:
人们会认为在 2019 年的字符串末尾显示三个点很容易,但事实恰恰相反。我试过了:
maxLines="1"
drawablePadding="10dp"
ellipsize="end"
ellipsize="marquee"
singleLine="true"
layout_width="match_parent"
layout_width="wrap_content"
我在 stackoverflow 上解决了几十个问题,但它不起作用。
我的布局文件很简单:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/dialog_nearest_charger"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:minHeight="40dp"
android:orientation="horizontal"
android:weightSum="10">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:minWidth="55dp"
android:layout_weight="1"
android:orientation="vertical">
<TextView
android:id="@+id/itemChargerDistance"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:textColor="@color/colorCoarseDistance"
android:textStyle="bold"
android:textSize="20sp"
android:text="1.2" />
<TextView
android:id="@+id/itemChargerUnits"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:textSize="12sp"
android:text="miles" />
</LinearLayout>
<ImageView
android:id="@+id/itemChargerOperator"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:minWidth="40dp"
android:layout_weight="1"
app:srcCompat="@drawable/dot_cpo_cps_copy_5" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginStart="7dp"
android:layout_weight="2"
android:drawablePadding="10dp"
android:orientation="vertical">
<TextView
android:id="@+id/itemChargerTitle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:drawablePadding="10dp"
android:ellipsize="end"
android:maxLines="1"
android:text="Kinross Park and Ride"
android:textSize="18sp"
android:textStyle="bold" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal">
<TextView
android:id="@+id/itemChargerAddress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginStart="5dp"
android:textSize="14sp"
android:text="Junction Road" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
我只需要在 TextView itemChargerTitle 溢出时显示三个点。到目前为止,即使在 Android Studio 预览版中,我发现的任何解决方案都不起作用。
【问题讨论】:
-
只需指定一个与 wrap_content 不同的高度。否则,小部件将始终适应并且永远不会省略其中的文本
-
添加了
android:ellipsize="end" android:maxLines="1",它对我有用。