如果给定的EditText为空,如何防止焦点移动到下一个字段?

时间:2014-05-30 18:45:35

标签: java android

我动态添加了五个EditText控件,我想在进入下一步之前检查它们是否已填充。这就是我到目前为止所拥有的:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.register_form)

    EditText nameedit = new EditText(this);
    nameedit.setHint("First name");
    blur.addView(nameedit);
    nameedit.setWidth(32);
    nameedit.setEms(50);
    MarginLayoutParams params3 = (MarginLayoutParams) nameedit.getLayoutParams();
    params3.leftMargin = 16; params3.topMargin = 125;
    nameedit.setLayoutParams(params3);
    Typeface font33=Typeface.SERIF;
    nameedit.setTypeface(font33);
    nameedit.setMaxLines(1);
    nameedit.setImeOptions(EditorInfo.IME_ACTION_NEXT);
    nameedit.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD);

1 个答案:

答案 0 :(得分:1)

转到“下一步”可能是通过右击按钮来完成的?如果是这样,请使用

nameedit.getText().toString().length()获取输入的长度。检查是否zero。为其他4 EditText做同样的事情。

根据验证进入下一步。

将您的Reg_btn.setOnClickListener(this);更改为以下内容:

Reg_btn.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
                            if(nameedit.getText().toString().length()>0){// also use && to validate other 4 edittext views
                                   //do your stuff here
                            }

        }
    });