我是Parse和Android开发人员的新手,目前正在开发一个由Android上的ParseQueryAdapter
供电的聊天功能。问题是我需要像任何其他聊天应用程序的用户体验:底部的最新消息和顶部的“加载更多”按钮,我无法得到我想要的结果。Reverse ParseQueryAdapter ItemList
我试着orderByAscending("updatedAt")
对我的查询和结果似乎是正确的:项目列表排序从旧到新(从顶部到底部)。达到最大项目(25个项目)时出现问题,并出现“加载更多”按钮。 '加载更多'按钮放在ListView
的底部,最上面的消息仍然是第一条消息。
现在我开始考虑订购我的查询orderByDescending("updatedAt")
并修改ParseQueryAdapter
的getItem
方法,因此项目将反向排序。 我试图子类ParseQueryAdapter
的getItem
到:
@Override
public ParseObject getItem(int position) {
return super.getItem(getCount() - position - 1);
}
我把它从this post因为ParseQueryAdapter
是基于BaseAdapter
。
而可悲的是,它返回NullPointerException
时,让我的ParseQueryAdapter子类,如下对象的getParseUser
:
public class ChatContentCustomAdapter extends ParseQueryAdapter<ParseObject> {
public ChatContentCustomAdapter(Context context, final String roomId){ ... }
public View getItemView(final ParseObject object, View v, ViewGroup parent) {
if (object.getParseUser("sender") == cUser) {
//populating layout
}
}
}
我应该怎么做才能解决这个问题呢?
感谢您的建议。我将适配器切换到BaseAdapter,并且一切正常。 –