2017-06-14 61 views
1

我实现了搜索回收站视图的代码,但是当我编写多个属于同一个cardview的单词时,我会多次显示该卡。我只需要显示一次,如果它们匹配我的大部分单词,就需要首先显示在列表中。搜索后显示多个

搜索部分

if (charString.contains(",")) { 
    String searchChar[] = charString.split(","); 
    for (int i = 0; i < searchChar.length; i++) { 

    if (androidVersion.getApi().toLowerCase().contains(searchChar[i]) || androidVersion 
     .getName() 
     .toLowerCase().contains(searchChar[i]) || androidVersion.getVer().toLowerCase() 
     .contains(searchChar[i])) { 

     filteredList.add(androidVersion); 
    } 
    } 
} else { 
    if (androidVersion.getApi().toLowerCase().contains(charString) || androidVersion.getName() 
     .toLowerCase().contains(charString) || androidVersion.getVer().toLowerCase() 
     .contains(charString)) { 

    filteredList.add(androidVersion); 
    } 
} 

example

回答

0

你会怎么做?让它看起来。

searchView.setOnQueryTextListener(新SearchView.OnQueryTextListener(){ @覆盖 公共布尔onQueryTextSubmit(查询字符串) {返回false;}

 @Override 
     public boolean onQueryTextChange(String newText) { 


      newText = newText.toLowerCase(); 

      final ArrayList<DictObjectModel> filteredList = new ArrayList<DictObjectModel>(); 

      for (int i = 0; i < wordcombimelist.size(); i++) { 

       final String text = wordcombimelist.get(i).toLowerCase(); 
       if (text.contains(newText)) { 

        filteredList.add(new DictObjectModel(wordcombimelist.get(i),meancombimelist.get(i))); 
       } 
      } 
      adapter = new CustomAdapter(filteredList); 
      recyclerView.setAdapter(adapter); 


      return true; 
     } 
    });