Textview 使用要点

来源:互联网 发布:淘宝买家一直没有评价 编辑:程序博客网 时间:2024/05/17 05:06

一:自定义Link点击事件

在TextView 中,如果需要再正文中添加链接,我们知道在Xml配置中可以加入AutoLick=‘All’  选项,

则可以通过Html形式加入链接,电话,email,www网址等,用户选中则会进入不同的category响应

App中去。如果我们需要加入自己的链接响应而不进入系统选择如何实现?

    下文中用户选中Lick链接,我们可以做自定义的响应。

点击:哈哈 则弹出Toast hello 消息

public class Demo extends Activity {private TextView tv;static Context ctx = null;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main1);ctx = this;tv = (TextView) findViewById(R.id.tv);tv.setMovementMethod(LinkMovementMethod.getInstance());String go = "Let's Go哈哈";SpannableStringBuilder style = new SpannableStringBuilder(go);MyURLSpan myURLSpan = new MyURLSpan(go);style.setSpan(myURLSpan, 8, 10, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);tv.setText(style);}private static class MyURLSpan extends ClickableSpan {private String mUrl;MyURLSpan(String url) {mUrl = url;}@Overridepublic void onClick(View widget) {// TODO Auto-generated method stubToast.makeText(ctx, " hello! ", Toast.LENGTH_SHORT).show();}}}
二:文本中底部-中间加横线
promotionLinkText = (TextView) this .findViewById(R.id. text_promotion_link );中间加横线promotionLinkText .getPaint().setFlags(Paint. STRIKE_THRU_TEXT_FLAG );底部加横线:promotionLinkText .getPaint().setFlags(Paint. UNDERLINE_TEXT_FLAG )
三:部分文字颜色设置

        使用String 定义如下

<resources>  <string name="welcome_messages">&lt;b>&lt;font color=\"#ff0000\">红色大写&lt;/font>&lt;/b></string></resources>

     代码中使用如下

           

String text = String.format(res.getString(R.string.welcome_messages), escapedUsername, mailCount);textview.setText(Html.fromHtml(text))

原创粉丝点击