怎么样在 android textview 中,其中每个字显示红色下部分显示蓝色
时间: 2024-02-11 18:07:11 浏览: 40
你可以使用 SpannableString 来实现在 TextView 中每个字上下不同颜色的显示效果。具体步骤如下:
1. 定义文字内容和颜色:
```java
String text = "每个字红色下部分蓝色";
int redColor = Color.RED;
int blueColor = Color.BLUE;
```
2. 创建 SpannableString 对象并设置每个字的颜色:
```java
SpannableString spannableString = new SpannableString(text);
for (int i = 0; i < text.length(); i++) {
if (i % 2 == 0) {
spannableString.setSpan(new ForegroundColorSpan(redColor), i, i + 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
} else {
spannableString.setSpan(new ForegroundColorSpan(blueColor), i, i + 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
}
}
```
以上代码中,`setSpan` 方法用于设置每个字的颜色,第一个参数是要设置的属性,这里是 `ForegroundColorSpan`,第二个参数和第三个参数都是当前字的位置,第四个参数是设置属性时的 flag,这里使用 `Spanned.SPAN_EXCLUSIVE_EXCLUSIVE`。
3. 将 SpannableString 对象设置给 TextView:
```java
textView.setText(spannableString);
```
这样就可以在 TextView 中实现每个字上下不同颜色的显示效果了。