我如何访问我从MySQL单独获得的所有JSON对象 - Android

时间:2017-07-08 21:08:00

标签: android mysql json

我想制作一个可以从MySQL获取所有内容的测验应用。 我得到了数据,我可以调用它,它将在Toast中显示

问题是,我们说我打电话,问题好吗? ,它得到了所有问题

某事? ,某事2?

我想访问该特定问题,因为我不希望它成为列表或单选按钮测验我希望能够访问每个单独的数据

是的,我不知道我做得对,但我哥哥是程序员,你可以详细说明

这是我的代码

DataQA QA = null;
JSONArray jArray = new JSONArray(result);

for(int i = 0; i < jArray.length(); i++) {
    JSONObject json_data = jArray.getJSONObject(i);
    QA = new DataQA();
    QA.Question_no= json_data.getString("Question_no");
    QA.Answers= json_data.getString("Answers");
    QA.Correct= json_data.getString("Correct");
    QA.CR= json_data.getString("CR");
    QA.IDD= json_data.getString("IDD");
    QA.Question= json_data.getString("Question");
    data.add(QA);
}

Toast.makeText(MainActivity.this, QA.Question_no, Toast.LENGTH_SHORT).show(); 

1 个答案:

答案 0 :(得分:0)

听起来您可以使用HashMap

跟踪您的问题
HashMap<String, QA> data = new HashMap<>();

JSONArray jArray = new JSONArray(result);
for (int i=0; i < jArray.length(); i++) {
  JSONObject json_data = jArray.getJSONObject(i);
  DataQA QA = new DataQA();
  QA.Question_no = json_data.getString("Question_no");
  QA.Answers = json_data.getString("Answers");
  QA.Correct = json_data.getString("Correct");
  QA.CR = json_data.getString("CR");
  QA.IDD = json_data.getString("IDD");
  QA.Question = json_data.getString("Question");
  data.add(QA.IDD, QA);
}

//now you can access any question you want by:
DataQA individualQuestion = data.get(/*QA IDD HERE*/);

请注意我是如何通过使用他们的ID来跟踪问题的。如果您愿意,只要所有问题编号都不同,您就可以使用Question_no问题跟踪它们。