android - EditText 错误图标并显示密码放错地方

标签 android android-edittext

我有一个 EditText 作为密码输入,如下所示

<android.support.design.widget.TextInputLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content">

            <EditText
                android:id="@+id/password"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:hint="@string/prompt_password"
                android:imeActionId="@+id/login"
                android:imeActionLabel="@string/action_sign_in_short"
                android:imeOptions="actionUnspecified"
                android:inputType="textPassword"
                android:maxLines="1"
                android:singleLine="true" />

</android.support.design.widget.TextInputLayout>

它正在工作,但是当出现错误时,错误图标会闪烁两次,并且位于显示密码图标的顶部。

error icon missplaced

我的验证代码显示错误:

if (success) {
    finish();
    startMainActivity();
} else {
         mPasswordView.setError(getString(R.string.error_incorrect_password));
            mPasswordView.requestFocus();
}

最佳答案

不要在 EditText 上调用 setError,使用 TextInputLayoutsetError()

关于android - EditText 错误图标并显示密码放错地方,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57630539/

相关文章:

android - 渐变安卓: post-process APK

java - 在 Android Studio 中应用于 URL 末尾时出现 "null"EditText 错误

Android TextInputLayout 提示与 EditText 提示重叠

java - 使用 EditText 编辑 RecyclerView 中的重复项目

Android lineHeight 与 lineSpacingExtra

android - 如果我的应用程序安装在 SD 卡上,私有(private)数据是否也在那里?

重新创建 Activity 后,Android Dialog 再次显示

android - fragment 在 viewpager 中对用户可见之前初始化

android - 以编程方式在后台有 GL View 的软键盘上使用 EditText

java - 将 EditText 中的字符串转换为 Double