How to change the focus to next edit text in android?

后端 未结 9 1695
南笙
南笙 2020-12-03 01:03

\"enter

The User can enter only one digit in the edit text. if he enters the value in

9条回答
  •  盖世英雄少女心
    2020-12-03 01:30

    set the length to editetxt as android:maxLength="1" and follow the below code

    ((EditText) findViewById(R.id.edi1)).addTextChangedListener(new TextWatcher() {
            public void onTextChanged(CharSequence s, int start, int before, int count) {
                // TODO Auto-generated method stub
                if(((EditText) findViewById(R.id.edi1)).getText().toString().length()==1)
                {
                    ((EditText) findViewById(R.id.edi1)).clearFocus();
                    ((EditText) findViewById(R.id.edi2)).requestFocus();
                    ((EditText) findViewById(R.id.edi2)).setCursorVisible(true);
    
                }
            }
    
            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
    
            }
    
    
        });
    
        ((EditText) findViewById(R.id.edi2)).addTextChangedListener(new TextWatcher() {
            public void onTextChanged(CharSequence s, int start, int before, int count) {
                // TODO Auto-generated method stub
                if(((EditText) findViewById(R.id.edi2)).getText().toString().length()==1)
                {
                    ((EditText) findViewById(R.id.edi2)).clearFocus();
                    ((EditText) findViewById(R.id.edi3)).requestFocus();
                    ((EditText) findViewById(R.id.edi3)).setCursorVisible(true);
    
                }
            }
    
            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
    
            }
    
    
        });
    
    
        ((EditText) findViewById(R.id.edi3)).addTextChangedListener(new TextWatcher() {
            public void onTextChanged(CharSequence s, int start, int before, int count) {
                // TODO Auto-generated method stub
                if(((EditText) findViewById(R.id.edi3)).getText().toString().length()==1)
                {
                    ((EditText) findViewById(R.id.edi3)).clearFocus();
                    ((EditText) findViewById(R.id.edi4)).requestFocus();
                    ((EditText) findViewById(R.id.edi4)).setCursorVisible(true);
    
                }
            }
    
            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
    
            }
    
    
        });
    

提交回复
热议问题