gpt4 book ai didi

java - 禁用和重新启用 EditText 字段 : Cursor and keyboard do not reappear after re-enabling it

转载 作者:太空狗 更新时间:2023-10-29 14:38:27 26 4
gpt4 key购买 nike

我正在设置一个登录 Activity ,其中包含用户名和密码。我想在应用程序尝试让用户登录系统时禁用用户名和密码编辑文本字段。

    signInButton.setOnClickListener(view -> {

valueAnimator.start();

loginView.setEnabled(false);
loginView.setFocusable(false);
loginView.clearFocus();
passwordView.setEnabled(false);
passwordView.setFocusable(false);
passwordView.clearFocus();

如果登录失败或不成功,我想重新启用/激活编辑文本字段。我已按照有关几个类似问题的说明进行操作,但每当我尝试再次允许字段可编辑时,光标和键盘都不会再次出现。我可以长按字段,光标会出现,但不允许进行任何编辑或更改,除非退出并返回应用程序。

                passwordView.clearFocus();
loginView.clearFocus();

loginView.setEnabled(true);
// loginView.setFocusable(true);
loginView.setClickable(true);
loginView.isFocusableInTouchMode();

passwordView.setEnabled(true);
// passwordView.setFocusable(true);
passwordView.setClickable(true);
passwordView.isFocusableInTouchMode();

loginView.setCursorVisible(true);
passwordView.setCursorVisible(true);
loginView.requestFocus();

<EditText
android:id="@+id/login"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/prompt_login"
android:focusable="true"/>

<EditText
android:id="@+id/password"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/prompt_password"
android:focusable="true"
android:inputType="textPassword"
android:visibility="gone" />

目前使用 Android Studio 3.1.4,有

compileSdkVersion 28
defaultConfig {
applicationId "co.***.app"
minSdkVersion 21
targetSdkVersion 27

最佳答案

如果您在按下 singInButton 时使用此代码:

 Button singInButton = findViewById(R.id.button);
singInButton.setOnClickListener(view -> {

loginView.setEnabled(false);
loginView.clearFocus();
passwordView.setEnabled(false);
passwordView.clearFocus();


});

当错误发生时你这样做:

public void onErrorLogin(){
loginView.setEnabled(true);
loginView.isFocusableInTouchMode();

passwordView.setEnabled(true);
passwordView.isFocusableInTouchMode();

loginView.setCursorVisible(true);
passwordView.setCursorVisible(true);
}

这应该有效。

关于java - 禁用和重新启用 EditText 字段 : Cursor and keyboard do not reappear after re-enabling it,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52151925/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com