同步查询?

时间:2016-07-28 09:31:20

标签: android parse-platform synchronous

如何在android中用parse实现同步查询? 我想要类似下面的东西,但是同步方式。

    ParseQuery<ParseObject> query = ParseQuery.getQuery("MyClass");
    query.findInBackground(new FindCallback<ParseObject>() {
    public void done(List<ParseObject> objects, ParseException e) {
         if (e == null) {
             objectsWereRetrievedSuccessfully(objects);
         } else {
             objectRetrievalFailed();
         }
     }
 }

1 个答案:

答案 0 :(得分:1)

使用ParseQuery#find()执行查询并阻止直到完成。以下内容应该有效:

ParseQuery<ParseObject> query = ParseQuery.getQuery("MyClass");
try {
    List<ParseObject> objects = query.find();
    objectsWereRetrievedSuccessfully(objects);
} catch (ParseException e) {
    objectRetrievalFailed();
}

然而,正如其他人已经提到的那样,阻止主线程通常不是一个好主意,因为这样做会使UI无响应。