Android:TextViewに下線付き文字列を設定する
下線付き文字列をアプリ画面内に設置する方法は2つあります。
res/values/strings.xmlにHTMLタグと一緒に文字列を定義する。
定義方法は簡単で、以下のようにリソースファイル(strings.xml)に記述すればOKです。
<string name="hoge_text"><u>下線付き文字列</u></string>
こうすればあとはActivity#getText(int resid)で通常の文字列(CharSequence)と同様に取得可能です。
これは下線付き文字列を静的(static)に扱う場合に有効でしょう。
Spannableクラスを使用してソースコード内で作成する。
ソースコード内で文字列に下線を付ける場合は、Spannableというクラスを利用します。
String text = "下線付き文字列"; // 1. ファクトリーにおまかせ Spannable t = Spannable.Factory.getInstance().newSpannable(text); // 2. 下線オブジェクト(他にも種類ある) UnderlineSpan us = new UnderlineSpan(); // 3. 装飾セット(装飾オブジェクト、開始位置、終了位置、装飾オブジェクト用?フラグ) t.setSpan(us, 0, text.length(), t.getSpanFlags(us)); // 4. TextViewにセット textView.setText(t, TextView.BufferType.SPANNABLE);
これは例えば、ユーザーが入力した任意の文字列に対して表示を行うなど、動的(dynamic)に値が変わる場合に有効です。
最近のコメント