長い文字列の省略表示

長い文字列の省略表示

TextViewで表示するときに
画面に入らないぐらいに
文字列が長いと途中で切り捨てられる

こんなときには、ブログとかでよくみる

で続くように表示できるので、これを使う

やり方は
レイアウトで
android:ellipsize=”end”
android:singleLine=”true”
を設定

ただし

[Android] 今後利用が推奨されないプロパティ


によれば
singleLine=”true”
から
maxLines=”1″
になるらしい

あと、複数行で末尾省略するには
android:scrollHorizontally=”true”
も必要

これについては
http://qiita.com/hackugyo/items/e23ecfda14bdfc672e7c
を参考にさせていただきました

レイアウトファイルのソース部分は

<TextView
android:id="@+id/text"
android:layout_width="200dip"
android:layout_height="wrap_content"
android:ellipsize="end"
android:maxLine="1"
android:text="レイアウトファイルによる省略文字の設定: お試し"/>

そして、プログラムで制御するなら
まずはレイアウトファイルのほうで
TextViewへidを付けて、それに対するプログラムを書く

まずは、レイアウトのソース

<TextView
android:id="@+id/text2"
android:layout_width="200dip"
android:layout_height="wrap_content"
android:text="" />

次に制御するJavaのソース
これは、onCreate()の中に書く

TextView text2 = (TextView)findViewById(R.id.text2);
text2.setEllipsize(TruncateAt.END);
text2.setMaxLines(1);
text2.setText("プログラミングで設定した省略文字の設定: お試し その2");

これらの set….に関しては
http://wikiwiki.jp/android/?UI%A5%B3%A5%F3%A5%DD%A1%BC%A5%CD%A5%F3%A5%C8%2FTextView
にまとめられているので参考に

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です