输入2个字符后如何在编辑文本中更改焦点

时间:2013-12-03 11:02:39

标签: android focus android-edittext onfocus

您好我难以在两个编辑文本之间更改焦点。 这个任务在Android 4.2中执行得非常好,但在三星Duos Android 4.0.1中完成相同的任务它不起作用请给我建议。 谢谢

我的代码是:

first_number_from.setOnKeyListener(new OnKeyListener() {
            @Override
            public boolean onKey(View v, int keyCode, KeyEvent event) {
                if (first_number_from.getText().length() == 2)
                    second_number_from.requestFocus();

                return false;
            }
        }); 

2 个答案:

答案 0 :(得分:0)

尝试使用TextWatcher代替onKeyListener

@Override
public void afterTextChanged(Editable s)
{
if (first_number_from.getText().toString().length() == 2)
{
     second_number_from.requestFocus();
}
}

答案 1 :(得分:0)

您可以添加文本更改的侦听器

first_number_from.addTextChangedListener(new TextWatcher() {

            public void onTextChanged(CharSequence s, int start,int before, int count)  {
                if(first_number_from.getText().toString().length() == 2) {
                    second_number_from.requestFocus();
                }
            }
            public void beforeTextChanged(CharSequence s, int start,
                            int count, int after) {}

            public void afterTextChanged(Editable s) {

            }

        });