我在其中一个包含人们性别的标签中有一个带有searchview的recylerview。当我使用searchview来过滤男性时,女性的结果也出现了,这是因为女性包含男性,我已经写了这个,但它似乎没有工作,我尝试在线搜索但没有任何东西是有用的。
if (gender.contains(query)) {
filteredModelList.add(model);
if (query.startsWith("male".toLowerCase())){
filteredModelList.remove(model.gender.startsWith("female".toLowerCase()));
}
}
我想要做的是,当用户搜索男性时,我希望女性搜索结果不会显示,如果人们搜索女性我不希望男性结果显示。
为了让你更好地了解,我粘贴了几张屏幕截图:
答案 0 :(得分:1)
当查询等于“男性”时,您可以搜索特定情况:
if(gender.contains(query))
{
if(query.toLowerCase().equals("male"))
{
if(gender.toLowerCase().startsWith(query.toLowerCase()))
{
filteredModelList.add(model);
}
}
else
{
filteredModelList.add(model);
}
}
所以只有当你输入“男性”时,“女性”才会显示出来。
答案 1 :(得分:0)
if(gender.contains("" + query +""))
丑陋但快速解决,希望能够奏效。如果您想要更好的解决方案,请提供更多代码。