AutoCompleteTextView正在突出显示

时间:2018-02-06 21:40:40

标签: android autocompletetextview

我使用AutoCompleteTextView组件为电子邮件和密码创建了一个登录活动。一旦自动完成,这些字段将突出显示。 如何禁用此突出显示? 找不到任何相关的财产。

form inputs are getting highlighted screenshot

2 个答案:

答案 0 :(得分:0)

可悲的是,我找不到任何通过设计属性(样式/布局属性等)的解决方案。

我不得不使用一种解决方法,这不是最漂亮的 - 但完成了它:

  1. 将TextChangeListener添加到相关的EditText:
  2.   

    mPasswordView.addTextChangedListener(textWatcherWorkAround);

    1. 在Listener中,在'afterTextChanged'覆盖方法中,我添加了:
    2. // 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
      

      它不漂亮,如果您找到任何直接,更好的方法,请告诉我。 现在 - 我希望有人遇到过这个问题!

答案 1 :(得分:0)

尽管已经有一段时间了,但我终于找到了正确的答案。 此亮点归因于 Android的自动填充框架。

要覆盖突出显示设置-

  1. SDK的最低版本必须为> 26
  2. 在应用主题(样式)中,添加以下项目: android:autofilledHighlight 并将值设置为所需的任何颜色(要禁用此突出显示,只需将其设置为透明)即可。