Returns 从解析数据库中检索到的所有值均为零

Returns zero for all values retrieved from the parse database

我正在使用解析后端来存储和检索我的 android 应用程序的数据,存储已正确完成,但我在检索它时遇到问题。我刚刚浏览了解析文档以检索结果,但我得到的所有检索值仅为 0..我确定 class 存在于具有有效值的解析云中,但我仍然得到所有的 0查询..这是我要保存的代码:

    Toast.makeText(getApplicationContext(),"writing to parse",Toast.LENGTH_SHORT).show();
    ParseObject dataObject = new ParseObject("Score");
    dataObject.put("correct",correctAnswers);
    dataObject.put("wrong",wrongAnswers);
    dataObject.put("percent", percentage);
    dataObject.saveInBackground();

这就是我取回已保存数据的方式

ParseQuery<Score> query = ParseQuery.getQuery("Score");
    try {
        List<Score> scoreList = query.find();
    } catch (ParseException e) {
        e.printStackTrace();
    }
    query = ParseQuery.getQuery("Score");
    final Activity ctx = this;
    query.findInBackground( new FindCallback<Score>() {
        @Override public void done(List<Score> scoreList, ParseException e) {
            if ( e == null ) {
                ParseObject dataObject = ParseObject.create("Score");
                int p = dataObject.getInt("correct");
                int q = dataObject.getInt("wrong");
                int r = dataObject.getInt("percent");
                Toast.makeText(ExamRecordActivity.this,String.valueOf(p),Toast.LENGTH_SHORT).show();
                Toast.makeText(ExamRecordActivity.this,String.valueOf(q),Toast.LENGTH_SHORT).show();
                Toast.makeText(ExamRecordActivity.this,String.valueOf(r),Toast.LENGTH_SHORT).show();
            } else {
                Toast.makeText(ctx,
                        "Error updating questions - please make sure you have internet connection",
                        Toast.LENGTH_LONG).show();
            }
        }
    });

在 done 方法中,您正在通过调用 ParseObject dataObject = ParseObject.create("Score"); 创建一个新方法,然后尝试从中读取值而不输入任何值。

我不知道你的 class 的结构是什么,但你需要遍历 List<Score> scoreList 才能获得查询的数据。