Folgendes habe ich gelernt, indem ich mit verschiedenen Optionen herumgespielt habe, um a TextView
in eine einzelne Zeile zu zwingen (mit und ohne die drei Punkte).
android: maxLines = "1"
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:maxLines="1"
android:text="one two three four five six seven eight nine ten" />
Dadurch wird der Text nur in eine Zeile gezwungen. Jeder zusätzliche Text wird ausgeblendet.
Verbunden:
ellipsize = "end"
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:maxLines="1"
android:ellipsize="end"
android:text="one two three four five six seven eight nine ten" />
Dadurch wird der nicht passende Text abgeschnitten, der Benutzer wird jedoch durch Hinzufügen eines Auslassungszeichens (der drei Punkte) darauf hingewiesen, dass der Text abgeschnitten wurde.
Verbunden:
ellipsize = "Festzelt"
<TextView
android:id="@+id/MarqueeText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:maxLines="1"
android:singleLine="true"
android:ellipsize="marquee"
android:focusable="true"
android:focusableInTouchMode="true"
android:text="one two three four five six seven eight nine ten" />
Dadurch wird der Text automatisch über die Textansicht gescrollt. Beachten Sie, dass es manchmal im Code festgelegt werden muss:
textView.setSelected(true);
Angeblich android:maxLines="1"
und android:singleLine="true"
sollte im Grunde das Gleiche tun und da singleLine anscheinend veraltet ist, würde ich es vorziehen, es nicht zu verwenden, aber wenn ich es herausnehme, scrollt das Festzelt nicht mehr. Das Herausnehmen maxLines
hat jedoch keinen Einfluss darauf.
Verbunden:
HorizontalScrollView mit scrollHorizontally
<HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/horizontalScrollView">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:maxLines="1"
android:scrollHorizontally="true"
android:text="one two three four five six seven eight nine ten" />
</HorizontalScrollView>
Auf diese Weise kann der Benutzer manuell scrollen, um die gesamte Textzeile anzuzeigen.