Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/219.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android AutoCompleteTextView将突出显示_Android_Autocompletetextview - Fatal编程技术网

Android AutoCompleteTextView将突出显示

Android AutoCompleteTextView将突出显示,android,autocompletetextview,Android,Autocompletetextview,我已经为电子邮件和密码创建了一个带有AutoCompleteTextView组件的登录活动。自动完成后,这些字段将高亮显示。 如何禁用此突出显示? 找不到此项的任何相关属性 遗憾的是,我无法通过设计属性(样式/布局属性等)找到任何解决方案 我不得不使用一种变通方法,这不是最漂亮的——但我做到了: 将TextChangeListener添加到相关的EditText: mPasswordView.addTextChangedListener(textWatcherWorkAround) 在侦听器中,

我已经为电子邮件和密码创建了一个带有AutoCompleteTextView组件的登录活动。自动完成后,这些字段将高亮显示。 如何禁用此突出显示? 找不到此项的任何相关属性


遗憾的是,我无法通过设计属性(样式/布局属性等)找到任何解决方案

我不得不使用一种变通方法,这不是最漂亮的——但我做到了:

  • 将TextChangeListener添加到相关的EditText:
  • mPasswordView.addTextChangedListener(textWatcherWorkAround)

  • 在侦听器中,在“afterTextChanged”重写的方法中,我添加了:
  • 这并不漂亮,请让我知道,如果你找到任何,直接的,更好的方法。
    现在-我希望它能帮助曾经遇到过这个的人

    虽然已经有一段时间了,但我终于找到了正确的答案。 这一亮点是由于Android的自动填充框架。

    要替代高光设置,请执行以下操作:

  • SDK最小版本必须大于26
  • 应用程序内主题(样式)添加以下项目:android:autofilledHighlight 并将该值设置为您想要的任何颜色(要“禁用”此高光,只需将其设置为透明)

  • 你知道这是在什么地方记录的还是一个bug?
    // til is the TextInputLayout wrapping my EditText
    til.setBackground(getResources().getDrawable(android.R.color.transparent));
    
    mPasswordView.removeTextChangedListener(this);
    mEmailView.removeTextChangedListener(this); // To avoid infinite loop
    
    String original = mPasswordView.getText().toString();
    mPasswordView.setText(original + " ");
    
    mPasswordView.addTextChangedListener(this); // To next time