我想在android textview中突出显示所选文本。任何人都可以告诉我在android textview中获取所选文本的开始和结束索引的可能性。
我使用以下TextView来选择文本。
<TextView
android:id="@+id/textview"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"
android:textIsSelectable="true"
android:bufferType="spannable"
/>
要突出显示特定字符串我使用以下代码。如何获取所选文本的开始和结束索引。
SpannableString str = new SpannableString("Highlighted. Not highlighted.");
str.setSpan(new BackgroundColorSpan(Color.YELLOW), 0, 11, 0);
textView.setText(str);
答案 0 :(得分:0)
可能这就是你要找的东西
int start = textView.getSelectionStart();
int end = textView.getSelectionEnd();
示例代码:
textView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
ClipboardManager cm = (ClipboardManager)context.getSystemService(Context.CLIPBOARD_SERVICE);
cm.setText(textView.getText());
int start = textView.getSelectionStart();
int end = textView.getSelectionEnd();
Toast.makeText(context, "Copied to clipboard", Toast.LENGTH_SHORT).show();
}
});