requestFocus () в OnEditorActionListener - PullRequest
1 голос
/ 21 июня 2019

Ниже приведен фрагмент кода, который я написал для переноса фокуса с одного текста редактирования на другой, но проблема, с которой я столкнулся в этой реализации, заключается в том, что фокус перемещается к определенному тексту редактирования и внезапно перемещается кследующий текст редактирования.Таким образом, я не смог ничего ввести, так как фокус не останавливается на этом конкретном тексте редактирования.

//some code comes here
// gun_pistolNotes and gun_pistolModel are two diff. editText
......
......
    gun_pistolNotes.setOnEditorActionListener(new OnEditorActionListener(){
    @Override
    public boolean onEditorAction(TextView view,int actionId, KeyEvent event){
    if(actionId == EditorInfo.IME_ACTION_UNSPECIFIED){
        gun_pistolModel.requestFocus(); // moves to this edittext and suddenly moves to another editext 
        return true;
    }
    return false;
    }
  });

......
......
//some code comes here

Любая помощь приветствуется.

1 Ответ

0 голосов
/ 21 июня 2019

Если вам не нужно реализовывать какую-либо связанную логику, вместо того, чтобы делать это программно, вы также можете сделать это напрямую в файле макета, используя атрибут android:nextFocusDown, как показано ниже:

...
...
<EditText
        android:id="@+id/gun_pistolNotes"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:nextFocusDown="@+id/gun_pistolModel" />

    <EditText
        android:id="@+id/gun_pistolModel"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

...
...
...