有没有办法在android.support.design.widget.TextInputLayout包装时为edittext的提示设置多种颜色,而不会影响浮动edittexts的行为?
等, 标题*
标题和*带有不同颜色的提示
答案 0 :(得分:0)
使用SpannableString
类,它允许您在字符串的某些部分使用不同的样式...如果我没记错的话,TextAppearanceSpan
类用于着色文本..
答案 1 :(得分:0)
见下面的代码,这对我有用。
/
答案 2 :(得分:0)
你可以通过程序化实现这个目标
SpannableString spString = new SpannableString("HEADERLINE*");
spString.setSpan(new ForegroundColorSpan(Color.MAGENTA), 11, spString.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
metUserName.setHint(spString);
答案 3 :(得分:0)
试试看!如果要将其用于setText,只需添加BufferType.SPANNABLE(请参见下文)
String redPart = "Hello";
String bluePart = "World";
SpannableStringBuilder builder = new SpannableStringBuilder();
SpannableString redColoredString= new SpannableString(redPart);
redColoredString.setSpan(new ForegroundColorSpan(Color.RED), 0, redPart.length(), 0);
builder.append(redColoredString);
SpannableString blueColoredString= new SpannableString(bluePart);
blueColoredString.setSpan(new ForegroundColorSpan(Color.BLUE), 0, bluePart.length(), 0);
builder.append(blueColoredString);
myEditText.setHint(builder)
//do following for setText
myEditText.setText(builder,BufferType.SPANNABLE)