AlertDialog
のsetMessage()
を使用するときにテキストの一部を太字に設定する方法は? <b>
と</b>
をString
に追加しても機能しません。
Html.fromHtml()
も使用する必要があります。例えば:
AlertDialog.setMessage(Html.fromHtml("Hello "+"<b>"+"World"+"</b>"));
更新:
Looks Html.fromHtml(String source)
は、最新のAndroid Nougatバージョンで廃止されました。廃止されたからといってコードを変更する必要があるわけではありませんが、廃止されたコードをアプリからできるだけ早く削除することをお勧めします。
置換は Html.fromHtml(String source, int flags)
です。フラグに言及するパラメータを追加するだけです。
if (Android.os.Build.VERSION.SDK_INT >= Android.os.Build.VERSION_CODES.N) {
AlertDialog.setMessage(Html.fromHtml("Hello "+"<b>"+"World"+"</b>", Html.FROM_HTML_MODE_LEGACY));
} else {
@Suppress("DEPRECATION")
AlertDialog.setMessage(Html.fromHtml("Hello "+"<b>"+"World"+"</b>"));
}
詳細については、 この回答 をご覧ください。
この page は、HTML文字列をリソース文字列に追加する方法を説明しています。
<resources>
<string name="welcome_messages">Hello, %1$s! You have <b>%2$d new messages</b>.
</string>
</resources>
使用することを忘れないでください:Html.fromHtml
AlertDialog.setMessage(Html.fromHtml(getString(R.string.welcome_messages)));
これは私のために働く
<string name="abouttxt">"<b>Info</b>\ntexttxtxtxtxt"</string>
これはxmlで私のために働く
誰かが単一の文字列のみを追加したい場合:
<string name="abouttxt"><b>Enter license key</b></string>
Alertdialogコードにこの行を追加します。
dialog.setTitle(Html.fromHtml(getString(R.string.abouttxt)))