SpannableStringBuilder去除下划线1
时间: 2024-04-03 09:35:47 浏览: 15
要去除SpannableStringBuilder中的下划线,你可以使用下面的代码:
```java
SpannableStringBuilder stringBuilder = new SpannableStringBuilder("Hello World");
stringBuilder.setSpan(new UnderlineSpan(), 0, stringBuilder.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
stringBuilder.setSpan(new ForegroundColorSpan(Color.RED), 0, stringBuilder.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
textView.setText(stringBuilder);
```
在这个代码中,我们使用`setSpan()`方法将一个`UnderlineSpan`对象添加到`SpannableStringBuilder`中,这会在文本中添加下划线。然后,我们使用`setSpan()`方法将一个`ForegroundColorSpan`对象添加到`SpannableStringBuilder`中,这会设置文本的颜色为红色。最后,我们将`SpannableStringBuilder`设置到`TextView`中。
如果你想去除下划线,只需将`UnderlineSpan`对象替换为`NoUnderlineSpan`对象,代码如下:
```java
SpannableStringBuilder stringBuilder = new SpannableStringBuilder("Hello World");
stringBuilder.setSpan(new NoUnderlineSpan(), 0, stringBuilder.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
stringBuilder.setSpan(new ForegroundColorSpan(Color.RED), 0, stringBuilder.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
textView.setText(stringBuilder);
```
这样,下划线就会被去除了。