6
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【Android】HTMLを使ってTextViewの一部を装飾する

Last updated at Posted at 2019-06-29

strings.xmlにHTMLを設定する

strings.xmlでは一部のHTML要素がサポートされています。
String resources  |  Android Developers

strings.xml

<resources>
    <string name="text_1"><b>太字</b>にします</string>
    <string name="text_2"><i>斜体</i>にします</string>
    <string name="text_3"><u>下線</u>を引きます</string>
    <string name="text_4"><font color="#ffaa00">赤文字</font>にします</string>
</resources>

Android Developersの日本語版で紹介されている要素は上記3つだけなのですが、
実は英語版ではそれ以外の要素も紹介されており、意外にたくさんの要素が使えることがわかります。
スクリーンショット 2019-06-29 16.46.10.png

注意点

  • 直接レイアウトファイルにHTMLを設定することはできず、strings.xmlを使う必要があります。
  • fromHtml(String)などを使ってコード内で設定する場合はエスケープ処理をする必要がありますが、今回のようにレイアウトファイルから呼び出す場合は必要ありません。
  • 改行は\nでできます。
  • 文字色の指定にcolors.xmlでの定義(@color/redなど)は使えず、カラーコードを用いる必要があります。

レイアウトファイルから呼び出す

今回は単純にレイアウトファイルから呼び出して使いたかったので、下記のようにTextViewに定義します。

android:text="@string/text_1"

これだけで簡単にTextViewの一部を装飾することができました。

6
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
5

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?