Android提醒:设置表单验证时遇到困难

时间:2011-12-02 10:21:03

标签: android

我打算在android中实现表单验证。我使用下面的代码完成了空字段验证。(对于编辑文本mTitleText)


mTitleText.setOnFocusChangeListener(this);

@Override
public void onFocusChange(View v, boolean hasFocus) {
  if( mTitleText.getText().toString().length() == 0 )     
    mTitleText .setError( "This Fieid should not be empty " );
  }
} 

但问题是,即使打开表单页面,它也会因空字段而显示错误。 看到图片。除了可以使用的onfocus更改之外还有什么东西吗? http://imageshack.us/photo/my-images/507/screenshotsd.png/

3 个答案:

答案 0 :(得分:1)

设置

mTitleText.setVisible(View.GONE);

在表单页面加载(表示onResume)

并更新

@Override
public void onFocusChange(View v, boolean hasFocus) {

 if( mTitleText.getText().toString().length() == 0 )     
    mTitleText .setError( "This Fieid should not be empty " );
    mTitleText.setVisible(View.VISIBLE);}

答案 1 :(得分:0)

你应该看一下TextWatcher。你可能需要afterTextChanged - 方法。

答案 2 :(得分:0)

为什么不在提交表单时测试表单(意思是,一旦用户按下“提交”按钮,测试所有字段)?测试每个领域失去焦点的动力是什么?