大家都知道OSC 的网页动态显示是需要多种颜色的才能达到需要的展示效果,如下图:
在iOS上官方SDK是不提供如此强大的富文本控件的,我在开发的过程中首先找到的是这个FTRichTextView第三方控件,虽然它是以类似 HTML的方式来形成富文本的,但是该控件在UITableView的列表显示性能表现相当糟糕,很容易就不显示完全或者压根就不显示,但是如果在 UITableView中使用UIWebView来显示的话,虽然富文本的目标可以达到,但是大家想想一个页面5,6个WebView会卡成什么样呢?
后来我找到了 RTLabel 这套控件,使用方法类似HTML文本格式,效果如下图
public static SpannableString parseQuoteSpan(String name,String body){
SpannableString sp = new SpannableString("回复:"+name+"\n"+body);
//设置用户名字体加粗、高亮
sp.setSpan(new StyleSpan(android.graphics.Typeface.BOLD), 3, 3+name.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
sp.setSpan(new ForegroundColorSpan(Color.parseColor("#0e5986")), 3, 3+name.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
return sp;
}
效果如下图
如果大家有任何疑问,请在下面的回帖中讨论吧
PS:
OSC Android客户端下载地址: http://www.oschina.net/uploads/osc.apk
OSC iPhone客户端下载地址: http://www.oschina.net/uploads/osc.ipa
OSC Windows Phone客户端下载地址: http://www.oschina.net/uploads/osc.xap
转载:http://www.oschina.net/question/213217_59127