Android |如何以编程方式禁用输入的自动建议?
Android | How disable auto-suggestion of an input programmatically?
在我的一个应用程序中,我试图在对话框中输入密码确认。该对话框完全以编程方式构建。我在将输入类型设置为密码时遇到了一些问题,但它正在工作。后来才发现键盘有自动提示选项
AlertDialog.Builder builder = new AlertDialog.Builder(mContext);
builder.setTitle(...);
builder.setIcon(...);
builder.setMessage(...);
builder.setCancelable(false);
EditText etForcePassword = new EditText(mContext);
etForcePassword.setSingleLine();
etForcePassword.setHint(...);
etForcePassword.setImeOptions(EditorInfo.IME_ACTION_DONE);
etForcePassword.setTransformationMethod(PasswordTransformationMethod.getInstance());
etForcePassword.setInputType(EditorInfo.TYPE_TEXT_FLAG_NO_SUGGESTIONS | EditorInfo.TYPE_TEXT_VARIATION_FILTER);
builder.setView(etForcePassword, top, right, bottom, left);
AlertDialog alertDialog = builder.create();
alertDialog.show();`
我通过设置 InputType
或简单地使用 XML 配置看到了很多解决方案,但它不适合我的应用程序。
提前致谢。
要关闭自动建议,请更改此行:
etForcePassword.setInputType(EditorInfo.TYPE_TEXT_FLAG_NO_SUGGESTIONS | EditorInfo.TYPE_TEXT_VARIATION_FILTER);
到这一行:
etForcePassword.setInputType(InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS | InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);
在 onCreate->setContentView() 下方插入:
getWindow().getDecorView().setImportantForAutofill(View.IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS);
在我的一个应用程序中,我试图在对话框中输入密码确认。该对话框完全以编程方式构建。我在将输入类型设置为密码时遇到了一些问题,但它正在工作。后来才发现键盘有自动提示选项
AlertDialog.Builder builder = new AlertDialog.Builder(mContext);
builder.setTitle(...);
builder.setIcon(...);
builder.setMessage(...);
builder.setCancelable(false);
EditText etForcePassword = new EditText(mContext);
etForcePassword.setSingleLine();
etForcePassword.setHint(...);
etForcePassword.setImeOptions(EditorInfo.IME_ACTION_DONE);
etForcePassword.setTransformationMethod(PasswordTransformationMethod.getInstance());
etForcePassword.setInputType(EditorInfo.TYPE_TEXT_FLAG_NO_SUGGESTIONS | EditorInfo.TYPE_TEXT_VARIATION_FILTER);
builder.setView(etForcePassword, top, right, bottom, left);
AlertDialog alertDialog = builder.create();
alertDialog.show();`
我通过设置 InputType
或简单地使用 XML 配置看到了很多解决方案,但它不适合我的应用程序。
提前致谢。
要关闭自动建议,请更改此行:
etForcePassword.setInputType(EditorInfo.TYPE_TEXT_FLAG_NO_SUGGESTIONS | EditorInfo.TYPE_TEXT_VARIATION_FILTER);
到这一行:
etForcePassword.setInputType(InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS | InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);
在 onCreate->setContentView() 下方插入:
getWindow().getDecorView().setImportantForAutofill(View.IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS);