怎样的android设置的EditText光标到文本的结尾光标、结尾、文本、android

2023-09-06 01:32:05 作者:莫欺少年穷

用户必须输入自己的手机号码,手机号码必须是10号,我用 TextWatcher 要做到这一点,像这样

The user has to enter his mobile number, the mobile number has to be 10 numbers, I used TextWatcher to do that, like this

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("Just 10 Number");
        }else{
            tv_mobileError.setText("*");
        }
    }
});

但是,当用户进入第11号的问题是,在EditText上的光标开始从文本的开始,我希望它仍然在最后,如何pelase?

but the problem is when the user enters the 11th number, the cursor of the edittext starts from the beginning of the text, I want it to still at the end, how pelase?

推荐答案

您有两种选择,两者都应该工作:

You have two options, both should work:

一)

editText.setText("Your text");
editText.setSelection(editText.getText().length());

B)

editText.setText("");    
editText.append("Your text");