可在 android for textView 上跨越

2022-09-01 02:59:32
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数据。我想使用Spantable使字体加粗和斜体,但它不起作用,给出一个错误。我该怎么做?


答案 1

我想使字体大胆和ıtalic与可跨越

为此,您需要制作文本,然后将其设置为TextView为:o.contentSpannableString

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);

编辑:您还可以使用Html.fromHtml在textview中使文本加粗和斜体::

tt.setText(Html.fromHtml("<strong><em>"+o.content+"</em></strong>"));

答案 2

创建文本并设置到您的文本的简单方法是使用以下方法:spannablebolditalicTextViewHtml.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>"));

推荐