如何使用Java在Android Studio中自定义setError消息
我在一个使用Java的Android Studio应用程序中有几条错误消息,我不知道如何自定义它们的外观。我在这个网站上查阅了好几个答案,但没有一个是我想要的 这就是错误消息的样子 我想更改黑色背景、白色文本以及红线和图标的颜色 这是错误消息的代码如何使用Java在Android Studio中自定义setError消息,java,android,android-studio,Java,Android,Android Studio,我在一个使用Java的Android Studio应用程序中有几条错误消息,我不知道如何自定义它们的外观。我在这个网站上查阅了好几个答案,但没有一个是我想要的 这就是错误消息的样子 我想更改黑色背景、白色文本以及红线和图标的颜色 这是错误消息的代码 String email = editTextEmail.getText().toString().trim(); String password = editTextPassword.getText().toString().tr
String email = editTextEmail.getText().toString().trim();
String password = editTextPassword.getText().toString().trim();
if(email.isEmpty()){
editTextEmail.setError("Please enter an email.");
editTextEmail.requestFocus();
return;
}
这是editText对象的代码
<EditText
android:id="@+id/login_email"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_margin="8dp"
android:gravity="center"
android:hint="Email"
android:padding="8dp"
android:drawableLeft="@drawable/email_icon"
android:textColor="#417577"
android:textSize="25dp" />
如何更改错误消息中显示的颜色?还有,有没有一种方法可以为整个应用程序设置这些颜色变化,而不仅仅是单独设置
谢谢大家! 通过谷歌搜索,我为你找到了一些答案。我在这里实现这些站点 我正在实现对我来说很好的源代码 这是改变颜色的简单方法。如果你有
html
的想法,你可能会在这里看到,你只是通过html格式改变颜色
editText.setError(Html.fromHtml("<font color="#000000">"error!"</font>"));
参考,看起来是同一个问题。
int errorColor;
final int version = Build.VERSION.SDK_INT;
if (version >= 23) {
errorColor = ContextCompat.getColor(getApplicationContext(), R.color.errorColor);
} else {
errorColor = getResources().getColor(R.color.errorColor);
}
String errorString = "This field cannot be empty"; // your error message
ForegroundColorSpan foregroundColorSpan = new ForegroundColorSpan(errorColor);
SpannableStringBuilder spannableStringBuilder = new SpannableStringBuilder(errorString);
spannableStringBuilder.setSpan(foregroundColorSpan, 0, errorString.length(), 0);
editTextView.setError(spannableStringBuilder);