Java 如何使用自定义适配器在ListView中搜索
我查看了以下站点: 它描述了如何在使用默认适配器的listview中实现搜索功能,并且运行良好 如何修改它,以便将其用于listview的自定义适配器 部分代码为:Java 如何使用自定义适配器在ListView中搜索,java,android,listview,Java,Android,Listview,我查看了以下站点: 它描述了如何在使用默认适配器的listview中实现搜索功能,并且运行良好 如何修改它,以便将其用于listview的自定义适配器 部分代码为: dataList = (ListView) findViewById(R.id.lvFiles); tvQuote = (TextView) findViewById(R.id.tvDisplay); tvQuote.setTypeface(Typeface.createFromAss
dataList = (ListView) findViewById(R.id.lvFiles);
tvQuote = (TextView) findViewById(R.id.tvDisplay);
tvQuote.setTypeface(Typeface.createFromAsset(MainActivity.this.getAssets(), "fonts/roboto.ttf"));
for (int y=0; y<strNamesOfAllah.length;y++) {
name = strNamesOfAllah[y];
meaning = strMeaning[y];
rowsArray.add(new SetRows(R.drawable.icon, name, meaning));
}
adapter = new SetRowsCustomAdapter(MainActivity.this, R.layout.customlist, rowsArray);
dataList.setAdapter(adapter);
dataList.setClickable(true);
dataList=(ListView)findviewbyd(R.id.lvFiles);
tvQuote=(TextView)findViewById(R.id.tvDisplay);
setTypeface(Typeface.createFromAsset(MainActivity.this.getAssets(),“fonts/roboto.ttf”);
对于(int y=0;y,您需要覆盖适配器内部的getFilter,并返回您创建的新customFilter对象。请参阅以下答案:
编辑:
@Override
public Filter getFilter() {
if(customFilter == null){
customFilter = new CustomFilter();
}
return customFilter;
}
您需要在适配器内部重写getFilter,并返回您创建的新customFilter对象。请参阅以下答案:
编辑:
@Override
public Filter getFilter() {
if(customFilter == null){
customFilter = new CustomFilter();
}
return customFilter;
}
我在这里找到了一个很好的例子:但我不确定如何修改getFilter()以使用我的基本适配器()只需覆盖getFilter并创建一个新的,如果还不存在,请参见上面的编辑。完整代码是什么?我找到了一个自定义筛选函数,但我对其中一些变量感到困惑。你能看一下吗?getFilter代码应该放在适配器中,你应该创建自己的CustomFilter类,类似于链接I pos中的类这帮助我完成了代码:我在这里找到了一个很好的示例:但我不确定如何修改getFilter()以使用我的基本适配器()只需覆盖getFilter并创建一个新的,如果还不存在,请参见上面的编辑。完整代码是什么?我找到了一个自定义筛选函数,但我对其中一些变量感到困惑。你能看一下吗?getFilter代码应该放在适配器中,你应该创建自己的CustomFilter类,类似于链接I pos中的类这帮助我完成了以下代码: