Android EditText按下輸入法軟體的enter按鍵,實現跳到下一個EditText等
阿新 • • 發佈:2019-01-22
android:id="@+id/et_username"android:layout_width="match_parent"android:layout_height="wrap_content"android:hint="username"android:imeOptions="actionNext"android:nextFocusForward="@+id/et_password"android:singleLine="true"/><EditTextandroid:id="@+id/et_password"android:layout_width="match_parent"android:layout_height="wrap_content"android:hint="password"android:imeOptions="actionDone"android:layout_below="@id/et_username"android:nextFocusForward="@+id/btn_login"android:singleLine="true"/><Buttonandroid:id="@+id/btn_login"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="login"android:layout_below="@id/et_password"/></RelativeLayout><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity"><EditText <pre name="code" class="html"><EditText
android:imeOptions="actionNext" //這個屬性可以指定輸入法enter的功能,actionNext - 下一步 actionSearch 等等
android:nextFocusForward="@+id/et_password" //指定下一個view 取得焦點
這樣當你在輸入username 後,按下輸入法的下一步,就會調到password的輸入框裡。 (這個兩個屬性是父類view的屬性,so)
當你輸完密碼,password的EditText裡有屬性android:imeOptions="actionDone",你也可以實現對它監聽
程式碼如下:
EditText etPassWord = (EditText) findViewById(R.id.et_password);
etPassWord.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
if(actionId == EditorInfo.IME_ACTION_DONE){
Toast.makeText(MainActivity.this,"Login",Toast.LENGTH_SHORT).show();
//...實現login功能
}
return false;
}
});