TextView
のコンテンツを太字、斜体、下線付きにしたいです。次のコードを試してみましたが、うまくいきましたが、下線が引かれませんでした。
<Textview android:textStyle="bold|italic" ..
どうすればいいですか?何か簡単なアイデアはありますか?
ベストアンサー1
これにより、TextView が太字、下線、斜体で同時に表示されます。
文字列.xml
<resources>
<string name="register"><u><b><i>Copyright</i></b></u></string>
</resources>
この文字列をTextViewに設定するには、main.xmlで次のようにします。
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/textview"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="@string/register" />
またはJAVAでは、
TextView textView = new TextView(this);
textView.setText(R.string.register);
ダイナミックテキストを使用する必要がある場合、上記のアプローチは役に立たない場合があります。その場合はスパナブル文字列行動に移ります。
String tempString="Copyright";
TextView text=(TextView)findViewById(R.id.text);
SpannableString spanString = new SpannableString(tempString);
spanString.setSpan(new UnderlineSpan(), 0, spanString.length(), 0);
spanString.setSpan(new StyleSpan(Typeface.BOLD), 0, spanString.length(), 0);
spanString.setSpan(new StyleSpan(Typeface.ITALIC), 0, spanString.length(), 0);
text.setText(spanString);
出力