美文网首页
Textview分段点击,改变颜色

Textview分段点击,改变颜色

作者: wenju | 来源:发表于2020-04-07 18:22 被阅读0次
    final SpannableStringBuilder style = new SpannableStringBuilder();
    //设置文字
    style.append(getString(R.string.privacy_agreement_dialog_context));
    //设置部分文字点击事件
    ClickableSpan clickableSpan1 = new ClickableSpan() {
        @Override
        public void onClick(View widget) {
            //服务协议
            UserAgreementActivity.start(LoginActivity.this, 0);
        }

        @Override
        public void updateDrawState(@NonNull TextPaint ds) {
            ds.setColor(getResources().getColor(R.color.color_theme));
            ds.setUnderlineText(false);
        }
    };
    ClickableSpan clickableSpan2 = new ClickableSpan() {
        @Override
        public void onClick(View widget) {
            UserAgreementActivity.start(LoginActivity.this, 1);
        }

        @Override
        public void updateDrawState(@NonNull TextPaint ds) {
            //设置文字颜色
            ds.setColor(getResources().getColor(R.color.color_theme));
            //去除下划线
            ds.setUnderlineText(false);
        }
    };
    //添加点击效果
    style.setSpan(clickableSpan1, 31, 37, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    style.setSpan(clickableSpan2, 38, 44, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    //点击需要
    wTvContext.setMovementMethod(LinkMovementMethod.getInstance());
    //去除点击高亮
    wTvContext.setHighlightColor(getResources().getColor(android.R.color.transparent));
    wTvContext.setText(style);

相关文章

网友评论

      本文标题:Textview分段点击,改变颜色

      本文链接:https://www.haomeiwen.com/subject/jdanphtx.html