代码:示例,
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条件的最后一条(动态的),这个时候,数据就会一直更新啦~
好了,讲完了,遇到的坑就此解决。