Android异步查询框架AsyncQueryHandler使用简介

1.首先是写一个查询的方法

//查询数据
    private void startQuery() {
        Uri uri=Sms.CONTENT_URI;
        String selection=" thread_id=?";
        String[] selectionArgs=new String[]{thread_id};
        //查询
        //projection 查询的字段
        queryHandler.startQuery(0, null, uri, SMS_PROJECTION, selection, selectionArgs, " date DESC");
    }

 

2.把需要查询的字段给抽取出来。

/**
     * 将查询所用的字段处理出来
     */
    private static final String[] SMS_PROJECTION=new String[]{
        "_id",
        "address",
        "date",
        "type",
        "body",
    };
    /**
     * 当前字段所对应的位置
     */
    private static final int ID_COLUMN_INDEX = 0;
    private static final int ADDRESS_COLUMN_INDEX = 1;
    private static final int DATE_COLUMN_INDEX = 2;
    private static final int TYPE_COLUMN_INDEX = 3;
    private static final int BODY_COLUMN_INDEX = 4;

 

3.然后继承异步查询框架

private class QueryHandler extends AsyncQueryHandler{

        public QueryHandler(ContentResolver cr) {
            super(cr);
        
        }
        
        //查询执行完成后悔执行这个方法
        protected void onQueryComplete(int token, Object cookie, Cursor cursor) {
            // TODO Auto-generated method stub
            super.onQueryComplete(token, cookie, cursor);
            //界面更新
            adapter.changeCursor(cursor);
        }
    }

转载于:https://www.cnblogs.com/yejiurui/archive/2012/12/28/2837760.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值