Android中的【Cursor】类总结

最近做一个音乐播放器,不断的用到cursor以及adapter去填充listview,以前只是用的多,知道咋用,没有仔细的深入去学习,今天特意学习了一下,写一点总结,方便自己和大家理解。当然是参考了许多大牛的博客的,这里贴上地址:

http://www.cnblogs.com/TerryBlog/archive/2010/07/05/1771459.html

http://hi.baidu.com/quding0308/blog/item/4623237568d6b100b151b9f4.html.

Cursor是把查询到的结果集封装在一个Cursor对象当中。

cursor就像是结果集上的一个游标,可以向前向后移动。

取出Cursor中的数据一般是用:

while(cursor.moveToNext())

{  

// 取值

}

很多时候,不要忘记 moveToFirst(),一般都是从第一行开始取值;

移动到需要的行的时候,根据下标来取出当前的行中的对应字段的值,

在使用cursor的时候一定要注意一下问题:

  • Cursor 是每行的集合。
  • 使用 moveToFirst() 定位第一行。
  • 你必须知道每一列的名称。
  • 你必须知道每一列的数据类型。
  • Cursor 是一个随机的数据源。
  • 所有的数据都是通过下标取得。

很多时候可以使用startManagingCursor()这个方法来管理cursor,就不用自己再去关闭(但是觉得这么轻松就能管理Cursor可能会出现一些想不到的问题,但是目前来说我基本都是用这个方法来管理cursor,测试什么的都没有出现问题)。

Cursor中的方法:



在Android 查询数据是通过Cursor 类来实现的。当我们使用 SQLiteDatabase.query()方法时,就会得到Cursor对象, Cursor所指向的就是每一条数据。结合ADO.net 的知识可能好理解一点。

Cursor 位于 android.database.Cursor类,可见出它的设计是基于数据库服务产生的。

另外,还有几个己知的子类,分别为:

  • AbstractCursor
  • AbstractWindowedCursor
  •  CrossProcessCursor
  •  CursorWrapper
  •  MatrixCursor
  •  MergeCursor
  •  MockCursor
  • SQLiteCursor



  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值