Android非同步查詢方塊架AsyncQueryHandler使用簡介

來源:互聯網
上載者:User

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);        }    }
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.