我有以下方法来查询聊天 Activity 的 onCreate 方法中的项目列表并将其设置为我的适配器:
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
rootview = inflater.inflate(R.layout.fragment_chat,container,false);
ListView chatListView = (ListView) rootview.findViewById(R.id.chatListView);
arrayAdapter = new ArrayAdapter<String>(getActivity(),android.R.layout.simple_list_item_1, messages);
ParseQuery<ParseObject> query = ParseQuery.getQuery("Message");
query.setLimit(15);
query.orderByAscending("createdAt");
query.whereLessThanOrEqualTo("createdAt", new Date());
query.findInBackground(new FindCallback<ParseObject>() {
public void done(List<ParseObject> objects, ParseException e) {
if (e == null) {
if(objects.size() > 0){
messages.clear();
for (ParseObject message : objects){
messages.add(message.getString("sender") + ": " + message.getString("content"));
}
arrayAdapter.notifyDataSetChanged();
}
} else {
// Something is wrong
}
}
});
chatListView.setAdapter(arrayAdapter);
我得到的结果是前15条数据,而不是最新的15条。 我该如何修复它?
最佳答案
使用 desc 排序而不是 asc:
query.orderByAscending("createdAt");
使用这个:
query.addDescendingOrder("createdAt");
关于java - (Parse/Android) 如何查询最新的15条数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61685772/