首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用EditText过滤支持SimpleCursorAdapter的ListView

使用EditText过滤支持SimpleCursorAdapter的ListView,可以通过以下步骤实现:

  1. 在布局文件中添加EditText和ListView控件。
代码语言:xml<EditText
复制
    android:id="@+id/edit_text"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:hint="请输入关键字" /><ListView
    android:id="@+id/list_view"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />
  1. 在代码中实现EditText的文本变化监听器,并在监听器中更新ListView的数据。
代码语言:java
复制
EditText editText = findViewById(R.id.edit_text);
ListView listView = findViewById(R.id.list_view);

// 创建SimpleCursorAdapter适配器
SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, android.R.layout.simple_list_item_1, cursor, new String[]{"column_name"}, new int[]{android.R.id.text1}, 0);
listView.setAdapter(adapter);

// 添加EditText文本变化监听器
editText.addTextChangedListener(new TextWatcher() {
    @Override
    public void beforeTextChanged(CharSequence s, int start, int count, int after) {
    }

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

    @Override
    public void afterTextChanged(Editable s) {
        // 更新ListView数据
        Cursor newCursor = getFilteredCursor(s.toString());
        adapter.swapCursor(newCursor);
    }
});
  1. 实现获取过滤后的Cursor的方法。
代码语言:java
复制
private Cursor getFilteredCursor(String keyword) {
    // 根据关键字查询数据库,返回过滤后的Cursor
    return getContentResolver().query(YourContentProvider.CONTENT_URI, null, "column_name LIKE ?", new String[]{"%" + keyword + "%"}, null);
}

通过以上步骤,就可以实现在EditText中输入关键字,自动过滤SimpleCursorAdapter中的ListView数据。

推荐的腾讯云相关产品:

  • 腾讯云数据库:提供MySQL、PostgreSQL、MongoDB等多种数据库服务,支持自动备份和恢复、读写分离等功能。
  • 腾讯云API网关:提供API管理、身份认证、限流、监控等功能,支持协议转换、异步调用等高级功能。
  • 腾讯云云服务器:提供虚拟化的计算资源,支持自动扩容、备份、监控等功能。
  • 腾讯云对象存储:提供分布式存储服务,支持高可用、高扩展、低成本等特点。

产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

【Android 应用开发】Android 数据存储 之 SQLite数据库详解

SQLite数据库简介 :  -- 轻量级 : SQLite数据库是一个轻量级的数据库, 适用于少量数据的CURD; -- 文件本质 : SQLite数据库支持大部分SQL语法, 允许使用SQL语句操作数据库...SQLite的数据存储格式 支持的数据类型 : SQLite数据库 内部 只支持null,integer,real(浮点型),text(文本),blob(二进制数据) 五种数据类型; 数据类型转换 :...将最新的SimpleCursorAdapter设置给ListView */ private void inflateListView(Cursor cursor) { SimpleCursorAdapter...//输入新闻标题 private EditText et_content; //输入新闻内容 private ListView listView; //显示新闻列表 @Override...将最新的SimpleCursorAdapter设置给ListView */ private void inflateListView(Cursor cursor) { SimpleCursorAdapter

2.5K10
  • Android数据读取之Sqlite数据库操作

    咱们书接上文,继续来说说Android数据读取,这回,我们要讲的是Sqlite数据库的相关操作。以一个实例开始吧: 首先,上图,看看做成后的效果: ? ? ?...大概描述:类似于浏览器的收藏夹,网站名称,网站地址,网站描述,添加完成之后显示已添加的所有的内容,在ListView单击弹出是否删除对话框,删除成功后刷新视图并重新查询内容。...安卓提供了创建和使用SQLite数据库的API。SQLiteDataBase代表一个数据库对象,提供了操作数据库的一些方法,另外还有一个SQLiteOpenHelper工具类更简洁的功能。...实例的文件组织如下: ?...apt=new SimpleCursorAdapter(this,R.layout.query,c,from,to); //列表视图 ListView listview =getListView

    1.5K30

    2014-10-31Android学习------SQLite数据库操作(四)-----数据库模块(二)增删改查实例展示

    ; import android.widget.ListView; import android.widget.SimpleCursorAdapter; public class DBActivity...源码中给出的这个SimpleCursorAdapter 首先看下API中的定义 Public Constructors public SimpleCursorAdapter (Context...作为替代,可以使用LoaderManager用CursorLoader 这里说应用程序的UI线程可能会导致异常,应该是当数据量过大的时候,查询时间需要很久,超过6秒,那么就会出现anr异常把,我猜是这种...标准的构造函数。 参数 上下文:ListView对于的activity的上下文 布局:布局文件的id。布局文件中应包括“to”定义的那些控件id c:数据库游标。...,不推荐使用呢,我想更上面的那个构造SimpleCursorAdapter是一个意思,当我们的数据量非常大的时候,这个操作需要更多的时间,时间一长,我们的UI进程不能等你的啊!

    60140

    android之ListView的Adapter使用

    在做一个小练习的时候,又遇到了Adapter,才发现以前没有对它进行过记录 现在介绍一下: 其实Adapter就是数据和视图之间的桥梁,数据在adapter中做处理,然后显示到ListView上面 Adapter...BaseAdapter, CursorAdapter, HeaderViewListAdapter, ListAdapter,ResourceCursorAdapter, SimpleAdapter, SimpleCursorAdapter...name=(EditText)findViewById(R.id.name); EditText address=(EditText)findViewById(R.id.addr);.... listView会根据这三个参数,遍历adapterData里面的每一条数据,读出一条,显示到第二个参数对应的布局中,这样就形成了我们看到的listView....*/ listView = (ListView) findViewById(R.id.array_list); /* 我们要在listView上面显示的数据,放到一个数组中

    73110

    Android ORM 框架之 greenDAO

    而今天的主角便是 greenDAO,下面,我将详解地介绍如何在 Android Studio 上使用 greenDAO,并结合代码总结一些使用过程中的心得。 关于 greenDAO ?... ORMLite,具体测试结果可见官网 greenDAO 支持 protocol buffer(protobuf) 协议数据的直接存储,如果你通过 protobuf 协议与服务器交互,将不需要任何的映射...与 ORMLite 等使用注解方式的 ORM 框架不同,greenDAO 使用「Code generation」的方式,这也是其性能能大幅提升的原因。...这是其核心概念:为了在我们的 Android 工程中使用 greenDAO ,我们需要另建一个纯 Java Project,用于自动生成后继 Android 工程中需要使用到的 Bean、DAO、DaoMaster...").notNull(); // 与在 Java 中使用驼峰命名法不同,默认数据库中的命名是使用大写和下划线来分割单词的。

    1.2K60

    Android开源库:手把手教你实现一个简单好用的搜索框(含历史搜索记录)

    X轴上的起点 y:组件在容器Y轴上的起点 width:组件的长度 height:组件的高度 } /** * 步骤3:通过监听复写EditText本身的方法来确定是否显示删除图标...对于含有一键清空功能 & 更多自定义样式的EditText自定义控件具体请看我的另外一个简单 & 好用的开源组件:Android自定义EditText:手把手教你做一款含一键删除&自定义样式的SuperEditText...创建adapter适配器对象 & 装入模糊搜索的结果 adapter = new SimpleCursorAdapter(context, android.R.layout.simple_list_item...创建adapter适配器对象 & 装入模糊搜索的结果 adapter = new SimpleCursorAdapter(context, android.R.layout.simple_list_item...具体使用 具体请看文章:Android开源库:这里有一个简单好用、含历史搜索记录的搜索框 完整Demo地址:Carson_Ho的Github地址:SearchView ? ---- 8.

    3K10

    跟我学Android之十三 SQLite数据库操作

    SQLite数据库简介 SQLite是一种非常流行的嵌入式数据库,是由C语言编写而成,是一款轻型关系型数据库,支持SQL,支持多种操作系统,完全独立运行,没有依赖性,Android内嵌了SQLite数据库...SQLite Expert Professional SQLite Develope SQLite与大型数据库的区别 两者都是支持关系的关系型数据库,SQLite是一个嵌入型的轻量级数据库,适合小数据量...提供了数据层的数据绑定桥梁 SimpleCursorAdapter可以将数据库层的数据提供给列表 1、准备一个列表项的布局用于ListView的展现 的数据提供给列表 2、使用SimpleCursorAdapter展现数据 ListView bookListView = (ListView)findViewById(R.id.booklist...: 2、使用ViewBinder修改数据 ListView bookListView = (ListView)findViewById(R.id.booklist); String [] from

    4200

    EditText的属性和使用方法

    一、EditText简介 EditText支持的XML属性及相关方法见TextView表中介绍的与输入有关的属性和方法,其中比较重要的一个属性是inputType,用于为EditText设置输入类型,其属性值主要有以下一些...n android:inputType="textWebEditText":作为网页表单的文本。 n android:inputType="textFilter":文本筛选过滤。...EditText还派生了如下两个子类。 n AutoCompleteTextView:带有自动完成功能的EditText。由于该类通常需要与 Adapter结合使用,因此将会在下一章进行学习。...n ExtractEditText:并不是UI组件,而是EditText组件的底层服务类,负责提供全屏输入法支持。...EditText的示例程序就先到这里,关于其他使用方法建议大家自己进行练习。

    2.6K90

    Android ListView几种Adapter用法简介「建议收藏」

    大家好,又见面了,我是你们的朋友全栈君。 Android ListView使用简介 ListView是Android软件开发中十分常用也十分重要的一个UI控件。...ListView的每一个子项可以是一个简单的字符串,也可以是一组View的组合,开发者完全可以根据自己的需求来定义显示的形式。 如何使用一个ListView实现对数据的显示呢? 1....Adapter 含义 ArrayAdapter 用来绑定一个数组,支持泛型操作 SimpleAdapter 用来绑定在xml中定义的控件对应的数据 SimpleCursorAdapter 用来绑定游标得到的数据...2.准备数据 一般情况下Cursor都是通过查找数据获取到的,此处我们的重点是看如何用在SimpleCursorAdapter中来绑定到ListView中,因此我们使用可以直接示例化并可以直接插入数据的...使用BaseAdapter绑定数据 OK, 此处其实才是ListView用的最多的适配器实现方式,一般都是通过继承BaseAdapter类并重写父类的一些方法来完成ListView数据的绑定。

    1.3K20
    领券