EditText请求焦点

Kan*_*ika 53 android android-layout android-edittext

我正在设计一个登录页面:

UserName:  .....

Password:  .....

     LoginButton
Run Code Online (Sandbox Code Playgroud)

当活动开始时,我希望焦点转到"UserName"文本框并显示键盘.

我使用以下代码:

    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);
    }
Run Code Online (Sandbox Code Playgroud)

我不明白在何处编写此代码以使活动开始时键盘出现并且焦点位于"UserName"editText框中.有人可以指导我吗?

Awa*_*riq 170

编程方式:

edittext.requestFocus();
Run Code Online (Sandbox Code Playgroud)

通过xml:

<EditText...>
    <requestFocus />
</EditText>
Run Code Online (Sandbox Code Playgroud)

或者手动调用onClick方法.


Kan*_*ika 25

是的,我得到了答案..只需将manifest文件编辑为:

        <activity android:name=".MainActivity"
        android:label="@string/app_name"
        android:windowSoftInputMode="stateAlwaysVisible" />
Run Code Online (Sandbox Code Playgroud)

并设置EditText.requestFocus()onCreate()..

谢谢..


dro*_*oid 5

youredittext.requestFocus() 从活动中称呼它

oncreate();
Run Code Online (Sandbox Code Playgroud)

并在那里使用上面的代码