使用最新的Parse库v1.5.1
感谢现在我可以做的更新:
ParseQueryAdapter<ParseObject> mAdapter = new ParseQueryAdapter<ParseObject>(MainActivity.this, new ParseQueryAdapter.QueryFactory<ParseObject>() {
@Override
public ParseQuery<ParseObject> create() {
ParseQuery<ParseObject> query = new ParseQuery<ParseObject>(ParseObject.class);
query.fromLocalDatastore();
return query;
}
});
mListView.setAdapter(mAdapter);
现在我有一些固定的对象并且它们正确显示,但是当我取消它们时就像这样:
//Some ParseObject in the above adapter
object.unpinInBackground(new DeleteCallback() {
@Override
public void done(ParseException e) {
if(e == null) {
//I beleive this would be the correct approach.
mAdapter.notifyDataSetChanged();
}
}
});
当然,我希望该项目从相应的ListView
中消失,但它并不是。但是说我回到另一个活动并重新访问此活动,ListView
显示正确,没有最近取消固定的对象。
这是一个错误吗?如果不是我做错了什么?
答案 0 :(得分:2)
我有同样的问题)我用invoke方法ParseQueryAdapter.loadObjects()来解决它。
答案 1 :(得分:0)
您可以在致电mAdapter.remove(object)
notifyDataSetChanged();
unpinInBackground
从数据库中删除对象。可能适配器具有对象的本地副本。
remove
中似乎没有ParseQueryAdapter
方法。
以下是官方消息来源:
由于ParseQueryAdapter旨在始终显示a的结果 ParseQuery,您需要使用API请求来重新加载查询。
https://www.parse.com/questions/delete-a-object-using-parsequeryadapter