从 Parse.com 检索数据到 ArrayList<Object>

Posted

技术标签:

【中文标题】从 Parse.com 检索数据到 ArrayList<Object>【英文标题】:Retrieving data from Parse.com to ArrayList<Object> 【发布时间】:2016-06-15 19:17:18 【问题描述】:

我必须尝试将 Data 下载到 ArrayList 中。当我在 done() 方法中调用它时没关系,但是当我在 done() 之外调用它时,它将为空。我该如何解决?

        ParseQuery<ParseObject> query = ParseQuery.getQuery("code");
    query.findInBackground(new FindCallback<ParseObject>() 
        public void done(List<ParseObject> provineList, ParseException e) 
            if (e == null) 
                for (ParseObject mProvine : provineList) 
                    Provine provine = new Provine();
                    provine.setPro((String) mProvine.get("provine"));
                    provine.setNumber((String) mProvine.get("code_number"));
                    provines.add(provine);
                    Log.d("All provine", provines.get(i).getPro()); (it's ok, no problem).
                    i++;
                
             else
                Log.d("Provines", "Error: " + e.getMessage());
            
        
    );
Log.d("All provine", provines.get(0).getPro()); (it's null ).

【问题讨论】:

【参考方案1】:

你可以声明一个继承ParseObject的子类。

在调用Parse.initialize() 之前,在您的应用程序构造函数中调用ParseObject.registerSubclass(YourClass.class)

关注这个Subclasseshttps://www.parse.com/docs/android/guide#objects-subclassing-parseobject

      // Armor.java
    import com.parse.ParseObject;
    import com.parse.ParseClassName;

    @ParseClassName("Armor")
    public class Armor extends ParseObject 
    

    // App.java
    import com.parse.Parse;
    import android.app.Application;

    public class App extends Application 
      @Override
      public void onCreate() 
        super.onCreate();

        ParseObject.registerSubclass(Armor.class);
        Parse.initialize(this, PARSE_APPLICATION_ID, PARSE_CLIENT_KEY);
      
    

在查询时,您会以 ArrayList 的形式获得该数据。

ParseQuery<Armor> query = ParseQuery.getQuery(Armor.class);
query.whereLessThanOrEqualTo("rupees", ParseUser.getCurrentUser().get("rupees"));
query.findInBackground(new FindCallback<Armor>() 
  @Override
  public void done(List<Armor> results, ParseException e) 

    // here you can use results same as object model.


  
);

【讨论】:

以上是关于从 Parse.com 检索数据到 ArrayList<Object>的主要内容,如果未能解决你的问题,请参考以下文章

从 Parse.com 检索数据到 ArrayList<Object>

从 Parse.com 检索搜索结果的数据

如何从 Parse.com 检索数组

如何将检索到的对象从 parse.com 传递到 NSMutableArray 以与 UITableView 一起使用?

是否可以使用objective-c从parse.com检索数据并将其显示在网站上?

Swift 无法从 parse.com 检索图像