Как программно установить фокус на виджет кнопки? - PullRequest
78 голосов
/ 13 июля 2010

Можно ли установить фокус на виджет кнопки, который лежит где-то в моем макете?onCreate действия, которым мой контроль / фокус должен быть программно на этой кнопке.

Ответы [ 2 ]

176 голосов
/ 13 июля 2010

Да, это возможно.

Button myBtn = (Button)findViewById(R.id.myButtonId);
myBtn.requestFocus();

или в XML

<Button ...><requestFocus /></Button>

Важное примечание: Виджет кнопки должен быть focusable и focusableInTouchMode.Большинство виджетов focusable, но не focusableInTouchMode по умолчанию.Поэтому обязательно установите его в коде

myBtn.setFocusableInTouchMode(true);

или в XML

android:focusableInTouchMode="true"
1 голос
/ 19 мая 2018

Попробуйте это:

btn.requestFocusFromTouch();
...