I've got a ListView that's backed with a SimpleCursorAdapter.

Let me have the ability to filter their email list as if you would a contacts list, simply by typing, and that i discovered the textFilterEnabled()

Issue is, I could not see ways to get results having a SimpleCursorAdapter.

Is even possible?
If that's the case, how's it done?

The setTextFilterEnabled() method does not instantly implement blocking, because it does not know what inside your Cursor the written text ought to be strained against.

This android-designers thread has more particulars.

Really, there is a great question requested yesterday, which really is much like your question although it initially was asking how to deal with blocking when there's no physical keyboard on the device:

For any SimpleCursorAdapter cursor, you only have to make use of the setFilterQueryProvider, to operate another query for the cursor, in line with the constraint:

m_Adapter.setFilterQueryProvider(new FilterQueryProvider() {

  public Cursor runQuery(CharSequence constraint) {
    Log.d(LOG_TAG, "runQuery constraint:"+constraint);
    //uri, projection, and sortOrder might be the same as previous
    //but you might want a new selection, based on your filter content (constraint)
    Cursor cur = managedQuery(uri, projection, selection, selectionArgs, sortOrder);
    return cur; //now your adapter will have the new filtered content


Whenever a constraint is added (eg. using a TextView) the adapter should be strained:

public void onTextChanged(CharSequence s, int start, int before, int count) {
  Log.d(LOG_TAG, "Filter:"+s);
  if (m_slvAdapter!=null) {

Hope this can help. I'll attempt to write an entire article , with source code the following couple of days.

i discovered this short article useful http://androidcookbook.oreilly.com/Recipe.seamjsessionid=CE37400B3E545937B70BE2E9F94E78BB?recipeId=404

essentially, you setTextFilterEnabled(true) in your listview, and also you use setStringConversionColumn() and setFilterQueryProvider() in your SimpleCursorAdapter.