<b> <i>
単純なマークアップなどでテキストをレンダリングする必要があり、これで表示のトリックができるように見えますが、文字列*マークアップを使用してStrings.xmlに文字列を保存できるかどうか、または保存する必要があるかどうか疑問に思っています。この文字列をJavaファイルに保持するだけです。
4 に答える
ステップ1:次のstrings.xml
ようなファイルを作成します。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="welcome">Welcome to <b>Android</b>!</string>
</resources>
これは、 JasonRobinsonがリンクしたドキュメントからのものであることに注意してください。
ステップ2:レイアウトやマニフェストなどからこれを使用するためのステップ2はありません@string/welcome
。すでに完了です。
ステップ2b:Javaでこの値が必要な場合は、getText()
の代わりにを使用してgetString()
ください。
文字列をラップすることができます
<![CDATA[ ...html... ]]>
このようなことを試してください
<string name="html">
<![CDATA[
<p>paragraph</p>
<b>bold stuff</b>
]]>
</string>
このリンクを参照してください:フォーマットとスタイリング、特に「HTMLマークアップを使用したスタイリング」サブセクション。
を介してテキストを取得した後、メソッドを使用しHtml.FromHtml()
てテキストをaに設定し、2番目のパラメーターを渡します。TextView
setText(CharSequence text, TextView.BufferType type)
TextView.BufferType.SPANNABLE
次のようなhtmlタグで文字列をマークアップします。
<big>Welcome to <b>Android</b></big>! <small>Enjoy marking up your text</small>
...
次に、以下のようにテキストビューでスパン可能なテキストとして設定します。
Spanned spannedText = Html.fromHtml(yourMarkedUpString);
yourTextView.setText(spannedText, TextView.BufferType.SPANNABLE);
文字列テキストが定数リテラル、変数、またはstring.xml
リソースファイルにあるかどうかに関係なく、以下のタグをすぐに使用できます。
<p>
<div> handled exactly like <p>
<br>
<b>
<i>
<strong> (bug on some Android versions: generates italic)
<em> (bug on some Android versions: generates bold)
<u>
<tt>
<dfn>
<sub>
<sup>
<blockquote>
<cite>
<big>
<small>
<font size="..." color="..." face="..."> (buggy font size sometimes gets ignored)
<h1>, <h2>, <h3>, <h4>, <h5>, <h6>
<a href="...">
<img src="...">
<center>
のようなタグをもっと欲しい<strike>
ですか?
- ライブラリの使用を検討してください。
それとも、あなたは完全なドキュメントファンですか?