2016-07-28 59 views
0

如何在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(); 
     } 
    } 
} 
+0

新的AsyncTask執行耗時的操作 – samm

+0

我不想用async做這個,我想用同步的方式得到2個字符串,如果我不這樣做,幻燈片將會崩潰。 – JECon

回答

1

使用ParseQuery#find()來執行查詢並阻塞,直到它完成。像下面的東西應該工作:

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

然而,正如已經被別人提及,阻塞主線程通常不是一個好主意,因爲這樣做使UI響應。

+0

謝謝,它的工作原理!是的,我知道,這不是獲取數據的最佳方式,但它只有2個字符串,所以速度非常快。 – JECon