android如何将EditText的光标设置到其文本的末尾

8 浏览
0 Comments

android如何将EditText的光标设置到其文本的末尾

用户必须输入手机号码,手机号码必须是10位数字,我使用TextWatcher来实现,如下所示:

et_mobile.addTextChangedListener(new TextWatcher() {
    @Override
    public void onTextChanged(CharSequence s, int start, int before,
            int count) {
        // TODO Auto-generated method stub
    }
    @Override
    public void beforeTextChanged(CharSequence s, int start, int count,
            int after) {
        // TODO Auto-generated method stub
    }
    @Override
    public void afterTextChanged(Editable s) {
        // TODO Auto-generated method stub
        if (et_mobile.getText().toString().length() > 10) {
            et_mobile.setText(et_mobile.getText().toString()
                    .subSequence(0, 10));
            tv_mobileError.setText("只能输入10位数字");
        }else{
            tv_mobileError.setText("*");
        }
    }
});

但问题是,当用户输入第11位数字时,编辑框的光标会从文本的开头重新开始,我希望它仍然停留在文本的末尾,怎么做?

0