您的位置:首页 > 博客中心 > 数据库 >

数据库的异步查询-----AsyncQueryHandler

时间:2022-03-14 02:17

使用AsyncQueryHandler异步查询帮助类,可以实现数据库的增删改查(ContentProvidert提供的数据)。如果数据量较小的时候,使用一般的数据查询就可以实现。但是如果数据量较大,就会出现ANR(Application Not Responding)问题,这个时候你也可以使用Handler,但是这样会降低效率,这个时候我们就可以使用已经封装好的异步查询框架AsyncQueryHandler

AsyncQueryHandler内部实现://必须要有_id字段 final String[] from=new String[] { "_id","id" }; //数据库异步查询 new AsyncQueryHandler(getContentResolver()) { protected void onQueryComplete(int token, Object cookie, Cursor cursor) { //TestAdapter是SimpleCursorAdapter的子类 TestAdapter adapter = new TestAdapter(MainActivity.this, cursor, from); listView.setAdapter(adapter); listView.setSelection(adapter.getCount()-1); }; }.startQuery(0, null, TestProvider.CONTENT_URI, from, null, null, null);
上面“必须要有_id字段”,原因我在这里就不多说了,请参考我的另一篇博客: http://blog.csdn.net/u014544193/article/details/40976579。TestProvider是ContentProvider的子类。

AsyncQueryHandler的介绍,到这里基本上就结束啦,希望对大家有所帮组!!!

热门排行

今日推荐

热门手游