小编典典

如何设置部分文本视图可点击

all

我有文字“ Android 是一个软件堆栈 ”。在此文本中,我想将“ 堆栈
”文本设置为可点击。因此,如果您单击它,它将重定向到一个新活动(不在浏览器中)。

我试过了,但我没有得到解决方案。


阅读 62

收藏
2022-05-10

共1个答案

小编典典

android.text.style.ClickableSpan可以解决你的问题。

SpannableString ss = new SpannableString("Android is a Software stack");
ClickableSpan clickableSpan = new ClickableSpan() {
    @Override
    public void onClick(View textView) {
        startActivity(new Intent(MyActivity.this, NextActivity.class));
    }
    @Override
    public void updateDrawState(TextPaint ds) {
        super.updateDrawState(ds);
        ds.setUnderlineText(false);
    }
};
ss.setSpan(clickableSpan, 22, 27, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);

TextView textView = (TextView) findViewById(R.id.hello);
textView.setText(ss);
textView.setMovementMethod(LinkMovementMethod.getInstance());
textView.setHighlightColor(Color.TRANSPARENT);

在 XML 中:

<TextView 
  ...
  android:textColorLink="@drawable/your_selector"
/>
2022-05-10