为什么不呈现和剪裁单行 TextView 边界之外的单词?
Why are words that go outside a single line TextView's bounds not rendered and clipped?
我有一个 TextView
装在这样的容器中:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="40dp"
android:layout_height="wrap_content">
<TextView
android:layout_width="wrap_content"
android:layout_height="40dp"
android:maxLines="1"
android:text="Hi World" />
</FrameLayout>
FrameLayout
上 40 dp 的宽度不足以包含整行文本。因此,我希望 TextView
被其父级剪裁。相反,TextView
根本不呈现“世界”一词!
预计
实际
- 为什么第二个词没有呈现?
- 如何让
TextView
被剪掉?这是宽度变化动画的一部分(容器调整为 0dp 宽度),其中删除字母或 块 文本会导致烦人的闪烁。
这如您所愿
<TextView
android:layout_width="wrap_content"
android:layout_height="40dp"
android:singleLine="true"
android:ellipsize="none"
android:maxLines="1"
android:text="Hi World" />
还有这个
<TextView
android:layout_width="wrap_content"
android:layout_height="40dp"
android:inputType="text"
android:maxLines="1"
android:text="Hi World" />
我有一个 TextView
装在这样的容器中:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="40dp"
android:layout_height="wrap_content">
<TextView
android:layout_width="wrap_content"
android:layout_height="40dp"
android:maxLines="1"
android:text="Hi World" />
</FrameLayout>
FrameLayout
上 40 dp 的宽度不足以包含整行文本。因此,我希望 TextView
被其父级剪裁。相反,TextView
根本不呈现“世界”一词!
预计 | 实际 |
---|---|
- 为什么第二个词没有呈现?
- 如何让
TextView
被剪掉?这是宽度变化动画的一部分(容器调整为 0dp 宽度),其中删除字母或 块 文本会导致烦人的闪烁。
这如您所愿
<TextView
android:layout_width="wrap_content"
android:layout_height="40dp"
android:singleLine="true"
android:ellipsize="none"
android:maxLines="1"
android:text="Hi World" />
还有这个
<TextView
android:layout_width="wrap_content"
android:layout_height="40dp"
android:inputType="text"
android:maxLines="1"
android:text="Hi World" />