Android如何在AppCompatAutoCompleteTextView过滤项目上应用Listener

时间:2016-03-28 08:53:39

标签: java android

我有一个adapter,我还在AppCompatAutoCompleteTextView上设置了handle。但我需要event AppCompatAutoCompleteTextView handle,其event中不会显示任何项目(已过滤的项目)。 我只是不知道如何{{1}}这个特定的{{1}}我也阅读了文档,但它并不那么简单。所以请帮助我

对于Eg: 情况1: 假设我的字符串数组包含2项Apple,Android。 现在,只要用户输入“A”,就会出现一个下拉列表,显示已过滤的项目 在这种特殊情况下,下拉列表将包含2个项目:Apple和Android

案例2: 当用户键入“Ax”时,现在不会出现下拉列表。在此特定事件中,当没有显示SUGGESTION或下拉列表时。我需要展示祝酒词。

2 个答案:

答案 0 :(得分:1)

AutoCompleteTextView 中有一个名为 onFilterComplete()的方法。

  //count is the number of values computed by the filter
public void onFilterComplete (int count){

          if(count==0){
       //your code here 
     }
}

你应该在If块中实现你的代码,因为你想在结果为空时处理事情。谢谢你,我希望这是有帮助的。

答案 1 :(得分:0)

我建议您添加TextWatcher并检查afterTextChanged中的isPopupShowing()是否像这里

autocompleteTextView.addTextChangedListener(new TextWatcher() {

         //---overridden beforeTextChanged and onTextChanged here----

            @Override
            public void afterTextChanged(Editable s) {
              if(!autocompleteTextView.isPopupShowing()){
                 //Handle the event here if no suggestions are available    
                  Toast.makeText(MainActivity.this, "no suggestions available", Toast.LENGTH_SHORT).show();
              }
            }