Кнопка Next пропускает поле выбора даты и фокусируется только на EditText - PullRequest
0 голосов
/ 28 ноября 2018

У меня есть форма, содержащая некоторые editTexts и datePiker.при заполнении формы, когда я нажимаю «Далее», она фокусируется на следующем тексте редактирования, но когда между редактором текста появляется когда-либо средство выбора даты или счетчик, они пропускаются, и следующий текст редактирования после них устанавливается в фокусе.Может кто-нибудь помочь мне с этой проблемой?

Ответы [ 3 ]

0 голосов
/ 28 ноября 2018

убедитесь, что вы используете фокусируемый атрибут для выбора даты / счетчика:

android:focusable="true"
0 голосов
/ 28 ноября 2018

попробуйте этот метод, чтобы установить фокус в вашем атрибуте

android:nextFocusDown="@+id/etText1"  or android:nextFocusForward="@+id/etText1" 

и

android:imeOptions="actionNext"
0 голосов
/ 28 ноября 2018
editTextBefore.setOnEditorActionListener(new OnEditorActionListener() {
    @Override
    public boolean onEditorAction(TextView textView, int actionId, KeyEvent event) {
        if (actionId == EditorInfo.IME_ACTION_NEXT) {
            hideKeyboard();
            textView.clearFocus();
            spinner.requestFocus();
            spinner.performClick();
        }
        return true;
    }
});

ИЛИ

Добавьте эту строку, чтобы сфокусироваться на счетчике

Spinner spinner = (Spinner) findViewById(R.id.my_spinner); 
spinner.setFocusable(true); 
spinner.setFocusableInTouchMode(true);
spinner.requestFocus();

Вам также нужно будет скрыть клавиатуру, это можно сделать с помощью следующегометод

private void hideKeyboard() {
    InputMethodManager inputManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
    inputManager.hideSoftInputFromWindow(this.getCurrentFocus().getWindowToken(),
            InputMethodManager.HIDE_NOT_ALWAYS);
}
...