0
我想知道什麼是驗證形式的最佳方式?表單驗證的Android
我曾嘗試以下操作:
EditText fname = (EditText)findViewById(R.id.first_name);
String fname_text = fname.getText().toString;
if(fname_text.equalsIgnoreCase(""))
{
fname.setError("Field is required");
}
也:
fname.addTextChangedListener(new TextWatcher()
{
@Override
public void onTextChanged(CharSequence s, int start, int before, int count){
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after){
}
@Override
public void afterTextChanged(Editable s)
{
Pattern mPattern = Pattern.compile("[A-Za-z]{2,20}$");
Matcher matcher = mPattern.matcher(s.toString());
if(!matcher.matches()) // on Success
{
fname.setError("Please make sure you input a valid first name");
}
}
});
我在很困惑的事情是,...每當加載頁面的第一次,誤差顯示的消息,但是當我去的EditText內部,然後輸入一些內容,如果我刪除的內容,該錯誤信息不會保留。那麼如何保持這種驗證持久性?因爲程序正在形成的方式,它看起來不會很好地驗證任何東西。和你們知道一些正則表達式在android中的完整示例的好的鏈接,請做推薦。
而且也,我怎麼會投入onTextChanged的Pattern和Matcher方法或beforeTextChanged影響輸出?
謝謝...幫了很多人。 – 2013-04-22 14:40:39