上面是我开发的一个app中的登录页面,比较典型,可以使用账号登录,也可以用第三方平台授权登录,我们一般会要求用户输入账号密码,然后点击登录按钮进行登录,但有时候用户可能点不到登录按钮,输入法还没有隐藏,能不能让用户直接点击输入来确认自己的操作呢,这样给用户的体验肯定会比较好,我们可以看看下面这种情形:
弹出输入法之后,我们看不见登录按钮了,要把输入法隐藏掉才行,那何不让用户直接点击虚拟键盘的确认就完成我们的操作呢,所以这里提供一个开发的小技巧:
emailEdit = (CleanEditText) this.findViewById(R.id.et_email_phone);
emailEdit.setImeOptions(EditorInfo.IME_ACTION_NEXT);
emailEdit.setTransformationMethod(HideReturnsTransformationMethod
.getInstance());
passwordEdit = (CleanEditText) this.findViewById(R.id.et_password);
passwordEdit.setImeOptions(EditorInfo.IME_ACTION_DONE);
passwordEdit.setTransformationMethod(PasswordTransformationMethod
.getInstance());
passwordEdit.setOnEditorActionListener(new OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView v, int actionId,
KeyEvent event) {
if (actionId == EditorInfo.IME_ACTION_DONE) {
clickLogin();
}
return false;
}
});