Android Design Demo 策略模式 TextView HTML封装 加下划线加图片加点击事件

来源:互联网 发布:进入网络女主播 编辑:程序博客网 时间:2024/06/05 11:51

参考:http://www.cnblogs.com/playing/archive/2011/03/17/1987033.html


尽管你可以用以下方式实现textview实现html的一些风格,我还是建议将html解析后再插入和替换

TextView t3 = (TextView) findViewById(R.id.text3);        t3.setText(            Html.fromHtml(                "<b>text3:</b>  Text with a " +                "<a href=\"http://www.google.com\">link</a> " +                "created in the Java source code using HTML."));


尤其在如果想在其中加入点击事件和插入图片是很困难的。

除了以上这段html文本形式表达,我封装了工具类,用代码将表达的更清晰,

以下是用代码编写的示例:



public class TextUtilsActivity extends Activity implements ClickListen {/** Called when the activity is first created. */TextView tv=null;String strContent="是一种可以撰写跨平台应用软件的面向对象的程序设计语言," +"是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台" +"(即JavaSE, JavaEE, JavaME)的总称。";@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);tv = (TextView) findViewById(R.id.text);//允许点击事件new TextForHTML()        //插入一张JAVA  logo.appendHtmlFormat(new ImgInRes(this, R.drawable.java, null))//插入一段文字                                            .appendHtmlFormat(strContent,   new ColorFont("#FCFCFC"),//颜色直白   new SizeFont(2),//字体大小2       new ParagraphFont()) //以段落形式.appendHtmlFormat(   new ActionSpan("你点击了一张图片",//插入了一张图片的事件区域   new ImgInRes(this,R.drawable.android, null).getSpannable(),this)).appendHtmlFormat(   new ActionSpan("打开了一条链接www.baidu.com",//插入文字事件区域TextForHTML.getStringSpan(">>点击阅读全文",new UnderLinerFont(), //加入下划线new ColorFont("#FF60AF")//颜色蓝色),this)).setSpanned(tv);}@Overridepublic void onClick(View widget, String url) {// TODO Auto-generated method stubToast.makeText(TextUtilsActivity.this,url, 3).show();}}


代码下载:http://download.csdn.net/detail/b275518834/4971770

原创粉丝点击