6

AlertDialog文字列とアイコンを組み合わせてメッセージを表示することを示したいと思います。

文字列リソースにアイコン/画像/ドローアブルを挿入することは可能ですか? の文字列を使用してドローアブルを表示する方法はありますかAlertDialog

編集
それが明確でない場合、ドローアブルは文字列内にある必要があります。「アイコン [icon-image] をクリックしてから... をクリックしてください」のように

4

3 に答える 3

12
    SpannableString spannableString = new SpannableString("@");
    Drawable d = getResources().getDrawable(R.drawable.your_drawable);
    d.setBounds(0, 0, d.getIntrinsicWidth(), d.getIntrinsicHeight());
    ImageSpan span = new ImageSpan(d, ImageSpan.ALIGN_BOTTOM);
    spannableString.setSpan(span, spannableString.toString().indexOf("@"),  spannableString.toString().indexOf("@")+1, Spannable.SPAN_INCLUSIVE_EXCLUSIVE);
    yourTextView.setText(spannableString);
于 2016-08-26T12:25:54.530 に答える
6

AlertDialog.Builderクラスには、これに使用できるメソッドまたはメソッドがsetIcon(int iconRes)あります。setIcon(Drawable icon)

編集:

文字列の途中で必要な場合は、次を使用できますImageSpan

String src = "Here's an icon: @ isn't it nice?";
SpannableString str = new SpannableString(src);
int index = str.indexOf("@");
str.setSpan(new ImageSpan(getResources().getDrawable(R.drawable.my_icon), index, index + 1, ImageSpan.ALIGN_BASELINE));

AlertDialog.Builder x = new AlertDialog.Builder(myContext);
x.setMessage(str);
于 2013-09-29T20:38:59.580 に答える
0

複合ドローアブルを含む ImageView または TextView で、カスタム ビューまたはカスタム タイトルを使用できます。

于 2013-09-29T20:40:08.767 に答える