Java android上的Spanable for textView

Java android上的Spanable for textView,java,android,twitter,spannable,Java,Android,Twitter,Spannable,我正在Android应用程序中设置twitter数据。我想使用Spanable将字体设置为粗体和斜体,但它不起作用,导致出现错误。我怎么做 我想用Spanable使字体粗体并带有意大利风格 为此,您需要将o.content文本设置为SpannableString,然后将其设置为text视图: Tweet o = tweets.get(position); TextView tt = (TextView) v.findViewById(R.id.toptext); //TextView bt =

我正在Android应用程序中设置twitter数据。我想使用Spanable将字体设置为粗体和斜体,但它不起作用,导致出现错误。我怎么做

我想用Spanable使字体粗体并带有意大利风格

为此,您需要将
o.content
文本设置为
SpannableString
,然后将其设置为text视图:

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);
编辑: 您还可以使用Html.fromHtml在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);
tt.setText(Html.fromHtml(“”+o.content+””);

创建
文本
粗体
斜体
以设置到
文本视图
的简单方法是使用方法
Html.fromHtml()

并使用html元素

myTextView.setText(Html.fromHtml(“我的文本粗体和斜体!”);
或者html元素

myTextView.setText(Html.fromHtml(mytext粗体和斜体!);
字号

SpannableString hint = new SpannableString(o.content.toString());
字体系列

hint.setSpan(new RelativeSizeSpan(0.9f), 0, hint.length(), Spanned.SPAN_INCLUSIVE_INCLUSIVE);
斜体

hint.setSpan(new TypefaceSpan("sans-serif"), 0, hint.length(), Spanned.SPAN_INCLUSIVE_INCLUSIVE);
颜色

大胆的

参考链接:

它给出了一个意外停止的错误。代码正常工作,但我想使字体加粗。ıt gıves此错误。请发布LogCat输出,例外情况除外。最有可能的情况是,您试图将span应用到文本结尾之外-使用实际长度而不是100此方法可能会有帮助spannablecontent.setSpan(新样式span(android.graphics.Typeface.BOLD_ITALIC),0,spannablecontent.length(),0)@baran:你也可以使用
Html.fromHtml
来制作粗体和斜体文本。我可以在这里添加图像。有什么方法可以像加粗文本一样添加图像吗?@Aada:只需使用
ImageSpan
,在谷歌上搜索ImageSpan就会得到很多结果。如何使用自定义字体?
SpannableString hint = new SpannableString(o.content.toString());
hint.setSpan(new RelativeSizeSpan(0.9f), 0, hint.length(), Spanned.SPAN_INCLUSIVE_INCLUSIVE);
hint.setSpan(new TypefaceSpan("sans-serif"), 0, hint.length(), Spanned.SPAN_INCLUSIVE_INCLUSIVE);
hint.setSpan(new StyleSpan(Typeface.ITALIC), 0, s.length(), 0);
hint.setSpan(new ForegroundColorSpan(Color.GRAY), 0, hint.length(), 0);
hint.setSpan(new StyleSpan(Typeface.BOLD), 0, hint.length(), 0);