您的位置:首页 > 移动开发 > Android开发

android 富文本SpannableString去掉下划线

2016-01-24 15:39 726 查看
总有些细节设计总监总是揪着不放,做的app中有个textview牵扯到了url链接,但是老大的意思是不能存在下划线,如下图:


-----》


代码如下:

String msg = "*注册即代表同意《用户协议》";
        SpannableString smp = new SpannableString(msg);

        ClickableSpan clickableSpan = new ClickableSpan() {
            @Override
            public void onClick(View widget) {
                startActivity(new Intent(UserRegisterActivity.this, UserProtocolActivity.class));
            }

            @Override
            public void updateDrawState(TextPaint ds) {
                ds.setUnderlineText(false);
//                super.updateDrawState(ds);
            }
        } ;

        //设置点击
        smp.setSpan(clickableSpan, msg.indexOf("《") + 1, msg.lastIndexOf("》"), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        //设置前景色
        smp.setSpan(new ForegroundColorSpan(Color.parseColor("#0AC3BC")), msg.indexOf("《"), msg.lastIndexOf("》") + 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
        //设置tv
        tv_introduce.setText(smp);
        tv_introduce.setMovementMethod(LinkMovementMethod.getInstance());


主要是重写

updateDrawState(TextPaint tp)
方法,将setUnderLineText()设置为false即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: