概述
我们在做项目的过程中经常需要关键字高亮来提醒用户。 就比如我们在ide中一些系统级的关键字会以不同的颜色来展示一样。
最近我看设计图中有一个很眼熟的效果,由于之前写过但是没有留下任何痕迹,所以这次又写了一个工具类。记录一下,方便以后的使用。
/**
*
* @param text 文字的总内容
* @param indexStr 关键字的内容
* @param color 关键字的颜色
* @return
*/
public SpannableStringBuilder setColor(String text, String indexStr, int color) {
// 记录关键字的次数 与他在整个字符中所占的索引位置
String[] deStr = text.split(indexStr);
ArrayList<Entity> objects = new ArrayList<>(deStr.length);
int cycleSize = text.endsWith(indexStr) ? deStr.length : deStr.length - 1;
for (int i = 0; i < cycleSize; i++) {
Entity entity = new Entity();
int index;