Фокус запроса EditText - PullRequest
       9

Фокус запроса EditText

52 голосов
/ 10 ноября 2011

Я создаю страницу входа в систему как:

UserName:  .....

Password:  .....

     LoginButton

Когда начинается действие, я хочу, чтобы фокус переместился в текстовое поле «Имя пользователя» и появилась клавиатура.

Я использую следующий код:

    boolean checkFocus=user.requestFocus();
    Log.i("CheckFocus", ""+checkFocus);
    if(checkFocus==true)
    {
    InputMethodManager mgr = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
    mgr.showSoftInput(user, InputMethodManager.SHOW_IMPLICIT);
    }

Я не понимаю, где написать этот код, чтобы клавиатура появлялась, когда начинается действие, и основное внимание уделяется текстовому окну «Имя пользователя». Может ли кто-нибудь, пожалуйста, вести меня?

Ответы [ 5 ]

165 голосов
/ 10 ноября 2011

Programatically:

edittext.requestFocus();

Через xml:

<EditText...>
    <requestFocus />
</EditText>

Или вызвать метод onClick вручную.

25 голосов
/ 10 ноября 2011

Да, я получил ответ .. просто отредактируйте файл manifest как:

        <activity android:name=".MainActivity"
        android:label="@string/app_name"
        android:windowSoftInputMode="stateAlwaysVisible" />

и установите EditText.requestFocus() в onCreate() ..

спасибо ..

4 голосов
/ 10 ноября 2011

youredittext.requestFocus() позвоните по номеру

oncreate();

и используйте приведенный выше код там

2 голосов
/ 14 ноября 2016

Это сработало для меня следующим образом.

ed1.requestFocus();

            return; //Faça um return para retornar o foco
0 голосов
/ 01 августа 2015

edittext.requestFocus() у меня работает в моих Activity и Fragment

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...