0

我想让一个编辑文本框的焦点在编辑时移动到另一个(这意味着您只能在字母上键入,然后它会自动移动到下一个编辑文本)。

这是我无法理解的“正在编辑”。谁能帮我举个简单的例子?有很多我需要实现它,所以只是一个基本的了解应该让球滚动^_^

4

2 回答 2

2

我真的不推荐这个。使用软键盘和多种语言,“一个字母”到底是什么?毕竟,软键盘可能会输入整个单词,不管你喜不喜欢。

于 2009-11-04T22:48:18.063 回答
1

CommonsWare 提出了一个很好的观点:您不能阻止用户向 EditText 框中添加更多字符,但是您可以听取更改的内容并采取行动。方法如下:

EditText editbox = (EditText) findViewById(R.id.MyEditBoxName);

editbox.addTextChangedListener(new TextWatcher()
{
    public void  beforeTextChanged(CharSequence s, int start, int count, int after)
    {

    }

    public void  onTextChanged(CharSequence s, int start, int before, int count)
    {

    }

    public void  afterTextChanged(Editable s)
    {
         // Test s for length, request focus for the next edit.
         // editbox2.requestFocus();
    }
});

注意不要让自己陷入更改编辑框的无限循环,您所做的任何更改都会导致这些方法再次被递归调用。

于 2010-07-18T22:36:24.493 回答