Фокус случайно перескакивает при прокрутке

У меня есть действие со множеством элементов управления EditText и флажков рядом с ними. По умолчанию большинство EditTexts отключены.

Когда я открываю действие, фокус получает какой-то случайный элемент управления EditText (рамка вокруг него), и если вы нажмете на него, экранная клавиатура появится, даже если EditText отключен, и текст не отображается при нажатии экранных клавиш.

Кроме того, весь мой макет заключен в ScrollView . Когда вы прокручиваете, некоторые случайные EditText получают фокус. Это может быть самый нижний видимый или самый верхний видимый, или иногда один в середине, иногда за пределами видимой области.

Поскольку случайный элемент макета получает фокус, Activity случайным образом прокручивается вниз, когда вы его открываете , что довольно раздражает.

Я предполагаю, что это ошибка Android, но есть ли обходной путь?

Не позволять EditText фокусироваться при запуске Activity обрабатывает ситуацию только с 1 EditText для который вы можете сказать, чтобы потерять фокус, чтобы фиктивный элемент мог его получить. В моем случае фиктивный элемент не получает фокус ни в onResume, ни в onCreate, с обоими android: focusable = "true" android: focusableInTouchMode = "true"

Следует ли мне проверять все элементы управления EditText (есть 12 из них) и велите им потерять фокус? Что с прокруткой, потому что кажется, что фокус случайно скачет.

5
задан Community 23 May 2017 в 10:30
поделиться