Android Move cursor from one EditText to another one if click any letter in field?

寵の児 提交于 2020-01-13 08:28:10

问题


I want to move cursor from EditText1 to another EditText2 . I had already focused to editText1 but how to move cursor to editText2.?


回答1:


Finaly i got the answer:

 editText1.addTextChangedListener(new TextWatcher() {

                public void onTextChanged(CharSequence s, int start, int before,
                        int count) {
                    Integer textlength1 = editText1.getText().length();

                    if (textlength1 >= 1) { 
                        editText2.requestFocus();
                    }
                }

                @Override
                public void afterTextChanged(Editable s) {
                    // TODO Auto-generated method stub
                }

                @Override
                public void beforeTextChanged(CharSequence s, int start, int count,
                        int after) {
                    // TODO Auto-generated method stub
                }
            });

            editText2.addTextChangedListener(new TextWatcher() {

                public void onTextChanged(CharSequence s, int start, int before,
                        int count) {
                    Integer textlength2 = editText1.getText().length();

                    if (textlength2 >= 1) {
                        editText3.requestFocus();

                    }
                }

                @Override
                public void afterTextChanged(Editable s) {
                    // TODO Auto-generated method stub
                }

                @Override
                public void beforeTextChanged(CharSequence s, int start, int count,
                        int after) {
                    // TODO Auto-generated method stub

                }
            });



回答2:


I can understand your answer,

But there is another good way to do it simply by using the following attribute

android:imeOptions="actionNext"

The example :

<EditText
android:hint="@string/hint_user_name"
android:id="@+id/et_user_name"
android:maxLines="2"
style="@style/EditText_Login"
android:imeOptions="actionNext" 
/>

Thanks,




回答3:


Set properties in your edittext1 click code...

EditText2.requestFocus();




回答4:


  EditText editText1 = (EditText)findViewById(R.id.editText1 );
  EditText editText2 = (EditText)findViewById(R.id.editText2);


editText1.setOnKeyListener(new OnKeyListener() {

public boolean onKey(View v, int keyCode, KeyEvent event) {
      // If the event is a key-down event on the "enter" button
      if ((event.getAction() == KeyEvent.ACTION_DOWN) &&
           (keyCode == KeyEvent.KEYCODE_ENTER))
      {
            // Perform action on Enter key press
            editText1.clearFocus();
            editText2.requestFocus();
            return true;
      }
      return false;
}
});


来源:https://stackoverflow.com/questions/12418324/android-move-cursor-from-one-edittext-to-another-one-if-click-any-letter-in-fiel

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!