我对编辑文本有以下定义:
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="15dp">
<EditText
android:id="@+id/password"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/prompt_password"
android:imeActionLabel="@string/action_sign_in_short"
android:imeOptions="actionUnspecified"
android:inputType="textPassword"
android:maxLines="1"
android:singleLine="true"
android:textColor="@color/loginColorPrimaryDark" />
</android.support.design.widget.TextInputLayout>
在我想要启动登录的操作按钮上:
edt_password.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override
public boolean onEditorAction(TextView textView, int id, KeyEvent keyEvent) {
if (id == R.id.login || id == EditorInfo.IME_NULL) {
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(textView.getWindowToken(),
InputMethodManager.RESULT_UNCHANGED_SHOWN);
attemptLogin();
return true;
}
return false;
}
});
在Nexus 5设备中,一切正常,在索尼设备中我得到以下内容:
因此,android:imeActionLabel="@string/action_sign_in_short"
和android:imeOptions="actionUnspecified"
都不会得到尊重。
令我惊讶的是,我没有自己指定,我在Android Studio中创建项目时在项目模板中选择了一个Login Activity。好像它坏了!
答案 0 :(得分:1)
尝试使用以下代码...对我来说它适用于所有设备..希望它能帮到你
compile ('com.parse.bolts:bolts-android:1.+')
compile ('com.parse:parse-android:1.+') /* <-- removed this */