关于AsyncQueryHandler偶尔数据不更新问题

来源:互联网 发布:引力波被发现 知乎 编辑:程序博客网 时间:2024/05/17 23:34

代码:示例,

new AsyncQueryHandler(

                            ChatActivity.this.getContentResolver()) {
                        @Override
                        protected void onQueryComplete(int token,
                                Object cookie, Cursor cursor) {
                            if (cursor != null) {
                                mAdapter = new ChatAdapter(ChatActivity.this,
                                        cursor, PROJECTION_FROM, mMsgListView,
                                        mOtherUser.getUserCode(),
                                        ChatActivity.this);
                                onVideoClick();
                                mMsgListView.setAdapter(mAdapter);
                                mMsgListView
                                        .setSelection(mAdapter.getCount() - 1);
                            }
                        }

                    }.startQuery(
                            0,
                            null,
                            ChatProvider.CONTENT_URI,
                            PROJECTION_FROM,
                            selection,
                            new String[] { mJabberID + "@pcapp", who_userCode },
                            ChatConstants.SEND_TIME + " asc LIMIT "
                                    + String.valueOf(limitStart) + ","

                                    + Constants.LIMIT_MESSAGE_END_FINAL);//LIMIT_MESSAGE_END_FINAL=-1

红色部分是我们的limit,限制查询的条件,格式:limit a,b;   当我们将b写某一固定值时候,加载够b条后,数据就不在继续更新,

所以我们在这里普及一个知识,limit a,b;  当我们将b设置为-1的时候,意味着从第a条开始一直查询到符合where条件的最后一条(动态的),这个时候,数据就会一直更新啦~

好了,讲完了,遇到的坑就此解决。

0 0
原创粉丝点击