1. ホーム
  2. アンドロイド

[解決済み】テキスト表示の一部をクリックできるように設定する方法

2022-04-03 11:14:19

質問

テキストがあります "。 Androidはソフトウェアスタックです となります。このテキストに、" スタック というテキストはクリック可能で、クリックすると新しいアクティビティ(ブラウザ内ではない)にリダイレクトされます。

私は試みたが、私は取得されていません。

どうすればいいですか?

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"
/>