我是Android开发的新手,我在一个关于自定义的网站的示例的帮助下编写了一些代码ListView
,现在ListView
我希望附加一个EditText
过滤文本并显示在ListView
我写的内容中.
目前,当我输入任何内容时,ListView
空白并且没有显示,但是当我删除输入时,ListView
恢复原始项目.
这是我的适配器类:
public class EntryAdapter extends ArrayAdapter- { private Context context; private ArrayList
- items; private LayoutInflater vi; public Context conx; public EntryAdapter(Context context, ArrayList
- items) { super(context,0, items); this.context = context; this.items = items; vi = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE); }
这是我为此插入的数据 main-class
items.add(new SectionItem("letters")); items.add(new EntryItem("a","subtitle","image")); items.add(new EntryItem("b","subtitle","image"));
这是我的textWatcher
,我创建的一个简单的:
inputSearch = (EditText) findViewById(R.id.inputSearch); inputSearch.addTextChangedListener(new TextWatcher() { @Override public void onTextChanged(CharSequence cs, int arg1, int arg2, int arg3) { // When user changed the Text StartClass.this.adapter.getFilter().filter(cs); } @Override public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) { // TODO Auto-generated method stub } @Override public void afterTextChanged(Editable arg0) { // TODO Auto-generated method stub } });
并在这里应用adapter
和设置listview
EntryAdapter adapter = new EntryAdapter(this, items); x = adapter; listview.setAdapter(adapter);
有人能告诉我我做错了什么吗?我试过看几个教程,但没有一个好的向我展示如何实现它,我实现了它但它不起作用.我有什么想法可能会缺少..?