Android中EditText验证错误信息?

8
在我的应用程序中,通常会像下面这样显示验证错误信息:

 if(someString.equals("")){
     editText.setError("UserName Should not be blank");
 } 

有其他的方法来显示错误消息吗?

我需要你的建议。


你可以查看文档http://developer.android.com/reference/android/widget/EditText.html。 - Hardik
使用 Toast 显示错误消息。 - Lucifer
2
@Hardik 当然有。它是从TextView继承而来的。 - ramaral
1
@Hardik 我不使用任何库。在editText中有一个选项可以弹出错误消息。 - Aristo Michael
请点击此链接查看关于Android表单验证库的内容:http://www.androidviews.net/2012/11/android-validator-form-validator-library/ - Hardik
显示剩余5条评论
2个回答

15

我认为你展示错误信息的方式比 toast 更好。有时候 toast 的持续时间太短了,用户来不及看到。

你也可以通过这样做来实现:

EditText et11 = (EditText)findViewById(R.id.username);
if(et11.getText().toString().isEmpty())
{
    et11.setError("UserName Should not be blank");
}

我尝试了这个方法,但客户希望有其他更有效的方式来提醒通知。 - Aristo Michael
1
我认为你必须向安卓客户展示三种通知方式:Alert Dialogs、Toasts、Notifications,因为客户在这种情况下的选择很重要。然后实现他建议/想要的任何方法 :) - Talha Q
有没有办法只突出显示必填字段,以便客户在留空时能够及时填写? - Aristo Michael
是的,你可以这样做。隐藏用户不需要看到的字段,只显示必填字段。 Editext.setVisibility(View.GONE); - Talha Q
1
还请查看以下内容:https://dev59.com/QEvSa4cB1Zd3GeqPenUm - Talha Q

1
private EditText edt_firstName;
private String firstName;
 firstName = edt_firstName.getText().toString().trim();

private void validateData(){
firstName = edt_firstName.getText().toString().trim();
if (!firstName.isEmpty(){
//here api call for the login or any other...
} else {
            if (firstName.isEmpty()) {
                edt_firstName.setError("Please Enter First Name");
                edt_firstName.requestFocus();
            }
}
}

当回答一个旧问题时,如果您包含一些上下文来解释您的答案如何有助于其他StackOverflow用户,那么您的答案将对其他人更有用。请参阅:如何撰写好答案 - David Buck

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接