Android设置部分文字颜色,背景,点击事件

final SpannableStringBuilder style = new SpannableStringBuilder();

        //设置文字

        style.append(文字);

        //设置部分文字点击事件

        ClickableSpan clickableSpan = new ClickableSpan() {

            @Override

            public void onClick(View widget) {

                Toast.makeText(MainActivity.this, "触发点击事件!", Toast.LENGTH_SHORT).show();

            }

            @Override

            public void updateDrawState(TextPaint ds) {

                ds.setColor(Color.BLUE);

                ds.setUnderlineText(false);

            }

        };

        style.setSpan(clickableSpan, 25, 47, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

        tv_test.setText(style);

//        //设置部分文字颜色

//        ForegroundColorSpan foregroundColorSpan = new ForegroundColorSpan(Color.parseColor("#0000FF"));

//        style.setSpan(foregroundColorSpan, 25, 40, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

//

//        //设置部分文字颜色

        BackgroundColorSpan backgroundColorSpan = new BackgroundColorSpan(Color.parseColor("#FFFFFF"));

        style.setSpan(backgroundColorSpan, 25, 40, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

        //配置给TextView

        tv_test.setMovementMethod(LinkMovementMethod.getInstance());

        tv_test.setText(style);

你可能感兴趣的:(Android设置部分文字颜色,背景,点击事件)