Когда я нажимаю «Далее», фокус на пользовательском тексте редактирования должен быть перемещен в пароль. Затем из пароля он должен переместиться вправо и так далее. Можете ли вы помочь мне, как его кодировать?
<LinearLayout
android:id="@+id/LinearLayout01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<TextView
android:id="@+id/username"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="User Name*" />
<EditText
android:id="@+id/txt_User"
android:layout_width="290dp"
android:layout_height="33dp"
android:singleLine="true" />
</LinearLayout>
<LinearLayout
android:id="@+id/LinearLayout02"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<TextView
android:id="@+id/password"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Password*" />
<EditText
android:id="@+id/txt_Password"
android:layout_width="290dp"
android:layout_height="33dp"
android:singleLine="true"
android:password="true" />
<TextView
android:id="@+id/confirm"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Password*" />
<EditText
android:id="@+id/txt_Confirm"
android:layout_width="290dp"
android:layout_height="33dp"
android:singleLine="true"
android:password="true" />
</LinearLayout>
android
android-edittext
androidBoomer
источник
источник
Ответы:
Фокусировка
Движение фокуса основано на алгоритме, который находит ближайшего соседа в заданном направлении. В редких случаях алгоритм по умолчанию может не соответствовать предполагаемому поведению разработчика.
Измените поведение по умолчанию для направленной навигации, используя следующие атрибуты XML:
Помимо направленной навигации вы можете использовать вкладку навигации. Для этого вам нужно использовать
Чтобы получить конкретный вид, чтобы сфокусироваться, позвоните
Для прослушивания определенных событий изменения фокуса используйте
View.OnFocusChangeListener
Кнопка клавиатуры
Вы можете использовать
android:imeOptions
для обработки этой дополнительной кнопки на клавиатуре.Константы imeOptions включают в себя различные действия и флаги, их значения см. По ссылке выше.
Пример значения
ActionNext :
ActionDone :
Пример кода:
Если вы хотите слушать события imeoptions, используйте
TextView.OnEditorActionListener
.источник
android:nextFocusForward="@+id/.."
сделали свое дело .android:imeOptions="actionNext"
на все мои EditTexts и проблема исчезла. Большое спасибо.должен принести тот же эффект. После нажатия рядом, чтобы перенести фокус на следующий элемент.
используйте это в дополнение, если вы не хотите, чтобы следующий вид получил фокус
источник
добавьте ваш editText
добавить свойство к активности в манифесте
в файле макета ScrollView установить в качестве корневого или родительского макета все пользовательский интерфейс
если вы не хотите каждый раз, когда он добавляет, создайте стиль: добавьте стиль в values / style.xml
по умолчанию / стиль:
источник
android:singleLine="true"
запрещено.Используйте следующую строку
parentedit
идентификатор следующего,EditText
на которого нужно сфокусироваться.В приведенной выше строке также потребуется следующая строка.
или
Спасибо за предложение @ Алексей Хлебников.
источник
android:inputType="text"
илиandroid:inputType="number"
.Добавление дополнительного поля
работал в моем случае!
источник
Эти три строки делают волшебство
источник
В обработчике onEditorAction помните, что вы должны вернуть логическое значение, которое указывает, обрабатываете ли вы действие (true) или применили ли вы некоторую логику и хотите ли вы нормальное поведение (false), как в следующем примере:
Я нашел это, когда вернул истину после выполнения своей логики, так как фокус не двигался.
источник
просто используйте следующий код, он будет работать нормально и используйте inputType для каждого текста редактирования, и следующая кнопка появится на клавиатуре.
источник
Попробуйте использовать тег android: imeOptions = "actionNext" для каждого editText в представлении, он будет автоматически фокусироваться на следующем тексте редактирования, когда вы нажимаете Next на программной клавише.
источник
В некоторых случаях вам может понадобиться переместить фокус на следующее поле вручную:
Это может понадобиться, если, например, у вас есть текстовое поле, в котором при щелчке открывается средство выбора даты, и вы хотите, чтобы фокус автоматически перемещался в следующее поле ввода после того, как пользователь выбрал дату, и средство выбора закрылось. Нет никакого способа справиться с этим в XML, это должно быть сделано программно.
источник
Простой способ, когда у вас есть только несколько полей одно за другим:
Нужно установить
android:maxLines="1"
android:imeOptions="actionNext"
android:inputType=""
<- Укажите тип текста, в противном случае он будет многострочным и будет препятствовать переходуОбразец:
источник
источник
Если вы хотите использовать мультилинию
EditText
сimeOptions
, попробуйте:источник
Добавьте inputType к тексту редактирования и при вводе он перейдет к следующему тексту редактирования
и многое другое.
источник
В Kotlin я использовал Bellow как ..
XML:
в котлине:
источник
источник
Если у вас есть элемент в виде прокрутки, вы можете решить эту проблему следующим образом:
и в вашей деятельности:
источник
Простой способ :
Добавьте это в поле edittext в .xml файле
источник