将parse对象检索到对话框的数组中

时间:2015-07-25 03:35:49

标签: android arrays parse-platform dialog

我想从解析中检索将变成数组的对象。然后,数组中的字符串将转到对话框的列表视图。我在获取对象时遇到了问题。请帮帮我。

非常感谢。

这是更新的代码:

    AlertDialog.Builder builderSingle = new AlertDialog.Builder(
                    AddSocialActivity.this);
            //builderSingle.setIcon(R.drawable.ic_launcher);
            builderSingle.setTitle("Select One Name:-");

            ParseUser currentUser = ParseUser.getCurrentUser();

            ParseQuery<ParseObject> query = new ParseQuery<ParseObject>("MyProfile");
            final String currentUserUsername = currentUser.getUsername();
            final ArrayList<String> myProfile = new ArrayList<String>();
            //query.whereContainsAll(currentUserUsername, myProfile);
            query.whereEqualTo("user", currentUserUsername);
            final ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(
                    AddSocialActivity.this,
                    R.layout.select_dialog_singleitem, myProfile);

            //String profileName = ParseObject.getString("profileName");
            query.getFirstInBackground(new GetCallback<ParseObject>() {
                public void done(ParseObject object, ParseException e) {
                    if (object == null) {
                        //Log.d("score", "The getFirst request failed.");
                    } else {

                        arrayAdapter.add(object.getString("profileName"));
                    }
                }
            });

1 个答案:

答案 0 :(得分:1)

您只在代码中约束查询。要检索查询,请在whereContainsAll方法之后添加以下内容。

query.getFirstInBackground(new GetCallback<ParseObject>() {
  public void done(ParseObject object, ParseException e) {
    if (object == null) {
      Log.d("score", "The getFirst request failed.");
    } else {
      arrayAdapter.add(object.getString("profilName"));
    }
  }
});

或者,如果您需要检索多个对象,请使用以下内容。

query.findInBackground(new FindCallback<ParseObject>() {
    public void done(List<ParseObject> profileList, ParseException e) {
        if (e == null) {
            // manipulate list
        } else {
            Log.d("profile", "Error: " + e.getMessage());
        }
    }
});

另外,请检查对象密钥是"profilName"还是"profileName"

编辑:您可以使用的for循环。

for(ParseObject object : profileList) {
    arrayAdapter.add(object.getString("profileName"));
}