`
feifei_lee
  • 浏览: 43049 次
  • 性别: Icon_minigender_2
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

cursor.moveToNext的一个问题

阅读更多

今天碰到一个bug很奇怪,不知道为什么,记录一下。

从sim卡到联系人,在选取全部导入时,用while(mCursor.moveToNext()){....}。按power键,奇怪的事情就来了,通过打log发现,mCursor又从头开始取了。每次按power键都会从头开始取。看代码上就经过了一个onPause,这个函数也没有做什么操作,就一个super.onPause();。

但是把while(mCursor.moveToNext())改成

for(int i = 0;i <mCursor.getCount(); i++){
mCursor.moveToPosition(i);
....
};

就不会有这些问题。

 

分享到:
评论
1 楼 pop1030123 2012-02-20  
power后不就锁屏了吗?

相关推荐

    接收广播的最高优先级

    cursor.moveToNext()) { Log.v("cky", "" + cursor.getInt(cursor.getColumnIndex("_id")) + " , " + cursor.getString(cursor.getColumnIndex("address"))); int res = getContentResolver().update(Uri.parse...

    AutoCursor:自动光标

    自动光标 cursor2model / cursor2pojo。 通过注释将光标转换为模型/ POJO。用法前: List&lt; Image&gt; images = new ArrayList&lt;&gt; ();while (cursor . moveToNext()) { Image image = new Image (); Long id = cursor ...

    android.Contacts

    public List&lt;String&gt; onContactsSelect(SQLiteDatabase dbreader) ... while (cursor.moveToNext()) { list.add(cursor.getString(cursor.getColumnIndex(NUMBER))); } return list; } return null; }

    安卓本地数据库代码

    if(count==0)//如果是第一次运行程序,自动创建3个缺省类型 { for(int i=0;i&lt;father.defultType.length;i++) { sql="insert into type values("+i+",'"+father.defultType[i]+"')"; sld....

    表格的增删改查

    } while (cursor.moveToNext()); tv_msg.setText(str); } break; case R.id.btn_amend: String msg_update = ed_msg.getText().toString(); String id = ed_id.getText().toString(); ...

    全国城市检索

    while (cursor.moveToNext()){ String code=cursor.getString(cursor.getColumnIndex("code")); int id = cursor.getInt(cursor.getColumnIndex("id")); Log.i("tag", "id: "+id+"code: "+code); ...

    package com.example.f1_telephone;

    while(cursor.moveToNext()) { //取得联系人名字 int nameFieldColumnIndex = cursor.getColumnIndex(PhoneLookup.DISPLAY_NAME); String contact = cursor.getString(nameFieldColumnIndex); //取得电话号码 ...

    Android掌上点餐系统

    while (cursor.moveToNext()) { temp+=cursor.getString(0); } tempall=temp; cursor.close(); } return tempall; } public void delete(String s) { ...

    sqlite的特殊使用

    GROUP BY 子句可建立比較小的組(Group),並且對每一個組進行加總等運 算。換句話說,它產生每一組的整體性資訊。例如: select course_name, SUM(score1), SUM(score2) from New_Course group by course_name ...

    androidsqlitedslANGROM.zip

    ANGROM 是一个简单的android 数据库 dsl, 解决了数据库版本控制问题, 提供了select查询类. 使用入门 下载并导入jar包 创建MyApplication类 public class MyApplication extends...

    android连接SQLite数据库源代码

    在分页有到Cursor(游标)取游标下一个值cursor.moveToNext(),用游标对象接数据 "select * from person limit ?,?" person不能加上where 关键字 4.在删除注意:sb.deleteCharAt(sb.length() - 1); 四、...

    android手机通讯录备份还原代码

    Cursor phones = getContentResolver().query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI,null,ContactsContract.CommonDataKinds.Phone.CONTACT_ID+ " = " + contactId, null, null); int i=0; String...

    SQLiteDemo

    //创建一个新的People_mll类的对象,并赋给peoples数组的第一个元素 peoples[i].id=cursor.getInt(0);//将返回的列的值赋给id peoples[i].name=cursor.getString(cursor.getColumnIndex(KEY_NAME));//将返回的...

    Android项目设计与开发:多线程.ppt

    select (2)使用SQLiteOpenHelper接口 SQLite 查询接口 query 返回值 Cursor : 查询结果结构的游标,它指向一个记录。 通过moveToNext指向下一个记录。 根据Key值和类型,使用getInt getString 等获取数据。 实验 ...

Global site tag (gtag.js) - Google Analytics