欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android中TextView设置不同的颜色并且可以响应点击事件

程序员文章站 2022-05-02 23:45:33
android中textview设置不同的颜色并且可以响应点击事件。 android中textview设置不同的颜色并且可以响应点击事件。 textview text = findvie...

android中textview设置不同的颜色并且可以响应点击事件。

 android中textview设置不同的颜色并且可以响应点击事件。
 textview text = findviewbyid(r.id.text);
        string mytext = "打电话";
        final string number = "123456";
        spannablestring ss2 = new spannablestring(mytext + number);
        ss2.setspan(new clickablespan() {

            @override
            public void onclick(view widget) {
                intent dialintent =  new intent(intent.action_dial,uri.parse("tel:" + number));//跳转到拨号界面,同时传递电话号码
                startactivity(dialintent);
            }
            //去掉下划线,重新updatedrawstate并且setunderlinetext(false)
            @override
            public void updatedrawstate(textpaint ds) {
                ds.setunderlinetext(false);
//                super.updatedrawstate(ds);
            }
        }, mytext.length(), ss2.length(), spanned.span_exclusive_exclusive);
        //设置0-mytext.length()距离的颜色
        ss2.setspan(new foregroundcolorspan(color.parsecolor("#333333")), 0,
                mytext.length(), spanned.span_exclusive_exclusive);
        ss2.setspan(new foregroundcolorspan(color.parsecolor("#2772ff")), mytext.length(),
                ss2.length(), spanned.span_exclusive_exclusive);
        text.settext(ss2);
// 设置textview为可点击状态
        text.setmovementmethod(linkmovementmethod.getinstance());