Я записал некоторый код для другого вопроса, который похож на этот, но этот вопрос дублировался, поэтому я не могу ответить на него, поэтому я просто размещаю свой код здесь, если кто-то ищет такое же требование.
Это не полностью рабочий код, вам нужно внести некоторые небольшие изменения, чтобы он заработал.
Вот код:
Я использовал идею @Graeme об использовании расширяемого текста.
String colorfulText = "colorfulText";
Spannable span = new SpannableString(colorfulText);
for ( int i = 0, len = colorfulText.length(); i < len; i++ ){
span.setSpan(new ForegroundColorSpan(getRandomColor()), i, i+1,Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
}
((TextView)findViewById(R.id.txtSplashscreenCopywrite)).setText(span);
Метод произвольного цвета:
private int getRandomColor(){
Random rnd = new Random();
return Color.argb(255, rnd.nextInt(256), rnd.nextInt(256), rnd.nextInt(256));
}