EditText edittext = (EditText)findViewById(R.id.etEditView);
if (edittext .getText().toString().isEmpty())
edittext.setError("Fill detail");
如果值为空,则显示错误对话框,但由于背景为白色且文本颜色也为白色,因此错误不可见。
如何更改背景颜色和textcolor ??
答案 0 :(得分:1)
尝试以下,
第一种方式,
final String userid = id.getText().toString();
final String userpwd = pwd.getText().toString();
if (TextUtils.isEmpty(userid)) {
id.setError(Html.fromHtml("<font color='red'>Username can't be empty</font>"));
return;
}
else if (TextUtils.isEmpty(userpwd)) {
pwd.setError(Html.fromHtml("<font color='red'>Password can't be empty</font>"));
return;
}
第二种方式,
public static void setErrorMsg(String msg,EditText viewId)
{
//Osama ibrahim 10/5/2013
int ecolor = Color.WHITE; // whatever color you want
String estring = msg;
ForegroundColorSpan fgcspan = new ForegroundColorSpan(ecolor);
SpannableStringBuilder ssbuilder = new SpannableStringBuilder(estring);
ssbuilder.setSpan(fgcspan, 0, estring.length(), 0);
viewId.setError(ssbuilder);
}
答案 1 :(得分:0)
您可以使用以下代码更改错误文本的文本颜色:
edittext.setError(Html.fromHtml("<font color='red'>Fill Detail</font>"));