Java android上的Spanable for textView
我正在Android应用程序中设置twitter数据。我想使用Spanable将字体设置为粗体和斜体,但它不起作用,导致出现错误。我怎么做 我想用Spanable使字体粗体并带有意大利风格 为此,您需要将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 =
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);