Android EditText默认不弹出输入法,以及获取光标,修改输入法Enter键的方法

一、Android EditText默认不弹出输入法的办法:
1. 在AndroidManifest.xml中将需要默认隐藏键盘的Activity中添加属性即可(常用此方法)

  android:windowSoftInputMode="adjustUnspecified|stateHidden"
  android:configChanges="orientation|keyboardHidden"

例如:

 <activity
            android:name=".activity.CheckInfoActivity"
            android:launchMode="singleTask"
            android:windowSoftInputMode="adjustUnspecified|stateHidden"
            android:configChanges="orientation|keyboardHidden"
            android:screenOrientation="portrait"/>

2.  让 EditText失去焦点,使用EditText的clearFocus方法

EditText edit = (EditText)findViewById(R.id.edit);
edit.clearFocus();

3. 强制隐藏Android输入法窗口

EditText edit=(EditText)findViewById(R.id.edit);
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(edit.getWindowToken(),0);

 二、Android EditText获取光标的办法:

开发中有时候需要将光标定位到指定的EditText,此时只需要将实例化的EditText设置一行代码即可

mEtId.requestFocus(); 

三、Android EditText修改输入法Enter键的方法:

场景1:输入法Enter键,确认的效果

在布局文件中添加以下属性即可

 android:imeOptions="actionDone"

例如:

 <EditText
                        android:id="@+id/et_id"
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:gravity="center"
                        android:hint="请输入工号"
                        android:inputType="number"
                        android:paddingLeft="10dp"
                        android:imeOptions="actionDone"
                        android:textSize="26sp"
                        />

场景2:输入法Enter键,定位到下一个EditText的方法

在布局文件中添加以下属性即可

 android:imeOptions="actionNext"

其他属性也有,但是常用的就这两个属性

                                                                                                                 

posted @ 2017-08-28 17:53  Travis1022  阅读(6280)  评论(0编辑  收藏  举报