以下はTextView
、aを1行に強制するためのさまざまなオプション(3つのドットがある場合とない場合)をいじって学んだことです。
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" />
これはテキストを強制的に1行にします。追加のテキストは非表示になります。
関連:
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" />
これは、適合しないテキストを切り取りますが、省略記号(3つのドット)を追加することによってテキストが切り捨てられていることをユーザーに知らせます。
関連:
ellipsize = "marquee"
<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" />
これにより、TextView全体でテキストが自動的にスクロールします。時にはそれをコードで設定する必要があることに注意してください:
textView.setSelected(true);
おそらくandroid:maxLines="1"
、android:singleLine="true"
基本的には同じことを行うはずですが、singleLineは明らかに非推奨となっているので、使用しない方がいいですが、取り出すと、マーキーはスクロールしなくなります。撮影maxLines
アウトしているが、それには影響しません。
関連:
scrollHorizontallyを使用したHorizontalScrollView
<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>
これにより、ユーザーは手動でスクロールして、テキストの行全体を表示できます。