相关疑难解决方法(0)

在android中的EditText上键入时如何过滤ListView数据

我有一个ListView和一个EditText.如何在键入时过滤ListView数据EditText

android

32
推荐指数
3
解决办法
5万
查看次数

android - 搜索列表视图?

Android是否可以为ListView设置搜索栏,以便在触摸搜索栏时弹出键盘,当在搜索栏中输入文本时,会显示ListView中匹配的项目?

我真正需要的是带有键盘的搜索栏.

更新:

我添加了EditText字段,它会调出一个键盘,我可以输入EditText字段.我想要的是让ListView中显示的列表中项目的前几个字符与EditText窗口中输入的字符相匹配.

我试过按照ListView Filter中列出的方法尝试,但是我对ListView中已经完成了多少过滤有点困惑?

1)我是否需要创建一个单独的数组来存储与EditText中键入的文本相匹配的值?从这篇文章调用adapter.notifyDataSetChanged,看来ListView已经有一个shadow数组来执行此操作,并在adapter.notifyDataSetChanged(); 叫做.

2)我是否需要调用adapter.notifyDataSetChanged(); 在EditText窗口中键入一些文本后更新ListView?

3)我是否需要扩展ListActivity,如此所示?如果是这样,如果活动类已经从主活动扩展,我该如何扩展我的活动类?

4)我目前拥有以下内容:

ArrayAdapter<String> adapter = null;
private EditText filterText = null;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.symptom);
    ListView symptomList = (ListView) findViewById(R.id.ListView_Symptom);
    symptomList.setTextFilterEnabled(true);
    symptomList.setFastScrollEnabled(true);
    filterText = (EditText) findViewById(R.id.search_box);
    filterText.addTextChangedListener(filterTextWatcher);

    adapter = new ArrayAdapter<String>(this, R.layout.menu_item, symptomsArray);
    symptomList.setAdapter(adapter);

    private TextWatcher filterTextWatcher = new TextWatcher() {

        public void afterTextChanged(Editable s) {
        }

        public void beforeTextChanged(CharSequence s, int start, int count,
                int after) {
        }

        public …
Run Code Online (Sandbox Code Playgroud)

android

19
推荐指数
1
解决办法
3万
查看次数

如何对SimpleCursorAdapter支持的Android ListView进行文本过滤?

我有一个由SimpleCursorAdapter支持的ListView.

我希望能够像输入联系人一样过滤列表,只需输入,我就遇到了textFilterEnabled()

问题是,我无法看到如何使用SimpleCursorAdapter.

这甚至可能吗?
如果是这样,它是如何完成的?

database android listview filter cursor

18
推荐指数
2
解决办法
3万
查看次数

按钮显示虚拟键盘?

我有一个ListView,可以使用硬件键盘过滤掉项目.但是,对于没有硬件键盘而只有虚拟键盘的手机,我该怎么办?有没有办法添加按钮,按下时,虚拟键盘出现?

keyboard virtual android listview

8
推荐指数
1
解决办法
1万
查看次数

使用Cursor Adapter实现带有过滤器的多个select的列表视图

Android问题中讨论了这个问题:过滤listview时检查了错误的项目.总结该问题,当使用带有CursorAdapter和过滤器的列表视图时,在过滤后的列表中选择的项目将在删除过滤器后丢失其选择,而是选择未过滤列表中该位置的项目.

使用上面链接问题中的代码示例,我们应该在哪里放置代码来标记复选框.我相信它应该在CustomCursorAdapter的getView()方法中,但我不确定.另外,我们如何访问包含自定义适配器类中所有selectedIds的HashSet,因为它将在保存列表的主活动中初始化和修改.

我实现ListView的活动

@Override
public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.selectfriends);

      Log.v(TAG, "onCreate called") ;

      selectedIds = new ArrayList<String>() ;
      selectedLines = new ArrayList<Integer>()  ;

      mDbHelper = new FriendsDbAdapter(this);
      mDbHelper.open() ;

      Log.v(TAG, "database opened") ;

      Cursor c = mDbHelper.fetchAllFriends();
      startManagingCursor(c);

      Log.v(TAG, "fetchAllFriends Over") ;


      String[] from = new String[] {mDbHelper.KEY_NAME};
      int[] to = new int[] { R.id.text1 };

      final ListView listView = getListView();
      Log.d(TAG, "Got listView");

   // Now initialize the  adapter and set it to display using …
Run Code Online (Sandbox Code Playgroud)

android android-listview simplecursoradapter

8
推荐指数
1
解决办法
4202
查看次数

使用EditText在ListView中搜索

我有一个ListView.它的每一行包含3 TextView和2 Button.在它上面我有一个EditText.如何按每行ListView第一TextView行的值过滤我的?

android

7
推荐指数
1
解决办法
2万
查看次数

使用EditText过滤支持SimpleCursorAdapter的ListView

我有一个ListView,其中包含一个由SimpleCursorAdapter支持的自定义项布局.我希望用户能够在EditText框中键入文本,并让ListView在键入时自动过滤.看起来这是与ArrayAdapter很简单的事,如所描述这里.

不幸的是,我没有运气使用SimpleCursorAdapter.我已尝试添加此处所述的额外方法,但该示例适用于AutoCompleteTextView而不是ListView.我无法为ListView工作.

有人可以为我提供一个使用EditText框过滤SimpleCursorAdapter支持的ListView的示例吗?

public class DirectoryListActivity extends DirectoryActivity {

    private static SimpleCursorAdapter adapter;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        setContentView(R.layout.directory_list);

        fillPeopleListView();

        EditText etext=(EditText)findViewById(R.id.search_box);
        etext.addTextChangedListener(new TextWatcher() {

            public void onTextChanged(CharSequence s, int start, int before, int count) {


            }

            public void beforeTextChanged(CharSequence s, int start, int count,
                    int after) {


            }

            public void afterTextChanged(Editable s) {
                adapter.getFilter().filter(s.toString());

            }
        });

    }

    private void fillPeopleListView() {
        // Populate the ListView
        SQLiteQueryBuilder queryBuilder = new SQLiteQueryBuilder();
        queryBuilder.setTables(
            directoryPeople.PEOPLE_TABLE
        ); …
Run Code Online (Sandbox Code Playgroud)

android

6
推荐指数
2
解决办法
2万
查看次数

Android:ListView制作搜索过滤器

有没有办法在我的自定义列表视图上创建一个使用BaseAdapter而不是ArrayAdapter创建的搜索过滤器,因为我只遇到了在自定义列表视图中使用ArrayAdapters的方法.Follwing是我遇到的使用Array Adapter制作过滤器

android listview base filter adapter

5
推荐指数
1
解决办法
1万
查看次数

如何在Android上制作ListView过滤器

我想ListView在Android中使用过滤器.我找到了这个链接但我这样做我无法获得过滤效果.谁能告诉我有什么问题?我的代码是

 public class testListViewFilter extends ListActivity {
/** Called when the activity is first created. */
private EditText filterText = null;
ArrayAdapter<String> adapter = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

filterText = (EditText) findViewById(R.id.search_box);
filterText.addTextChangedListener(filterTextWatcher);

setListAdapter(new ArrayAdapter<String>(this,
               android.R.layout.simple_list_item_1, 
               mStrings));
adapter = new ArrayAdapter<String> (this,
        android.R.layout.simple_spinner_item,  mStrings);

}private TextWatcher filterTextWatcher = new TextWatcher() {



@Override
public void beforeTextChanged(CharSequence s, int start, int count,
        int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, …
Run Code Online (Sandbox Code Playgroud)

android android-widget

2
推荐指数
1
解决办法
3010
查看次数

无法使用CursorAdapter子类过滤ListView

我有一个子类,CursorAdapter我想过滤我的listview.我知道这可以通过这里ArrayAdapter所说的完成,并且使用自定义的方式对我来说不起作用.我想用一个习惯来做这件事.我应该覆盖什么,我可以举个例子吗?CursorAdapterCursorAdapter

java android listview filter cursor

1
推荐指数
1
解决办法
5472
查看次数

如何将搜索添加到列表视图android,将项目排序为u类型

我有一个带有搜索栏的列表视图,我想在编辑文本中键入文本时对项目进行排序.我一直试图这样做,但是无法完成,你能帮我做吗?我要感谢你提前感谢

search android listview

0
推荐指数
1
解决办法
5124
查看次数