Tweet o = tweets.get(position);
TextView tt = (TextView) v.findViewById(R.id.toptext);
//TextView bt = (TextView) v.findViewById(R.id.bottomtext);
EditText bt =(EditText)findViewById(R.id.bottomtext);
bt.setText(o.author);
Spannable spn = (Spannable) bt.getText();
spn.setSpan(new StyleSpan(Android.graphics.Typeface.BOLD_ITALIC)
, 0, 100, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
//bt.setText(o.author);
tt.setText(o.content);
AndroidアプリケーションでTwitterデータを設定しています。Spannableを使用してフォントを太字および斜体にしたいのですが、機能せず、エラーが発生します。どうすればできますか?
Spannableでフォントを太字で太字にしたい
このため、uを作成する必要がありますo.content
テキストをSpannableString
として、次にTextViewに設定します:
SpannableString spannablecontent=new SpannableString(o.content.toString());
spannablecontent.setSpan(new StyleSpan(Android.graphics.Typeface.BOLD_ITALIC),
0,spannablecontent.length(), 0);
// set Text here
tt.setText(spannablecontent);
EDIT: Html.fromHtmlを使用して、textviewでテキストを太字および斜体にすることもできます。
tt.setText(Html.fromHtml("<strong><em>"+o.content+"</em></strong>"));
spannable
に設定するbold
テキストitalic
およびTextView
を作成する簡単な方法は、メソッドHtml.fromHtml()
を使用することです。
そしてhtml要素を使用して<b>
および<i>
myTextView.setText(Html.fromHtml("<b><i>my text bold and italic!</i></b>"));
またはhtml要素<strong>
および<em>
myTextView.setText(Html.fromHtml("<strong><em>my text bold and italic!</em></strong>"));