Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/179.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Android中删除Android中的单击范围?_Android_Spannablestring_Clickablespan - Fatal编程技术网

如何在Android中删除Android中的单击范围?

如何在Android中删除Android中的单击范围?,android,spannablestring,clickablespan,Android,Spannablestring,Clickablespan,我在TextView中实现了多个可单击跨距。我的意图是删除已单击的特殊跨度。我正在捕获跨度的onClick事件,但它返回整个textview。如何隔离单击的范围并将其删除?这可能会帮助您: String myText = "textA"; spannableStringBuilder = new SpannableStringBuilder(myText); spannableStringBuilder.setSpan(new ClickableSpan() { @Override

我在TextView中实现了多个可单击跨距。我的意图是删除已单击的特殊跨度。我正在捕获跨度的onClick事件,但它返回整个textview。如何隔离单击的范围并将其删除?

这可能会帮助您:

String myText = "textA";
spannableStringBuilder = new SpannableStringBuilder(myText);
spannableStringBuilder.setSpan(new ClickableSpan() {
    @Override
    public void onClick(View widget) {
        spannableStringBuilder.removeSpan(this);    // This will delete this clickable span
    }
},0,myText.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
myTextView.setText(spannableStringBuilder);
myTextView.setMovementMethod(LinkMovementMethod.getInstance());

也许这会帮助你:

String myText = "textA";
spannableStringBuilder = new SpannableStringBuilder(myText);
spannableStringBuilder.setSpan(new ClickableSpan() {
    @Override
    public void onClick(View widget) {
        spannableStringBuilder.removeSpan(this);    // This will delete this clickable span
    }
},0,myText.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
myTextView.setText(spannableStringBuilder);
myTextView.setMovementMethod(LinkMovementMethod.getInstance());