1

私は

  • クイズに参加するためのアプリを作成します。
  • json から質問を取得します。
  • BaseAdapter を拡張するカスタム アダプターを使用して、質問とオプションを設定できます。

問題

リストが大きくなるにつれて、答えるのが難しくなります。私が望むのは、各質問を 1 つのレイアウトで表示することです。ユーザーが [次へ] をクリックすると、次の質問が読み込まれます。

QuizView.java

List<Quiz> quizList = new ArrayList<Quiz>();

    String json = "[{\"question\": \"What?\", \"option1\": \"alpha\" , \"option2\": \"beta\" , \"option3\": \"gamma\" , \"option4\": \"alpha\"},{\"question\": \"What?\", \"option1\": \"alpha\" , \"option2\": \"beta\" , \"option3\": \"gamma\" , \"option4\": \"alpha\"}]";

    Gson gson = new Gson();
    JsonParser parser = new JsonParser();
    JsonArray array = parser.parse(json).getAsJsonArray();

    for(JsonElement obj : array) {
    Quiz quiz = gson.fromJson(obj,Quiz.class);
    String question = quiz.getQuestion();
    System.out.println("Question: "+question);
    quizList.add(quiz);

Quiz.java

public class Quiz {

    public String question;

    public String option1;
    public String option2;
    public String option3;
    public String option4;

    public void setQuestion(String question) {
        this.question = question;
    }

    public String getQuestion() {
        return question;
    }

    public void setOption1(String option1) {
        this.option1 = option1;
    }

    public String getOption1() {
        return option1;
    }

    public void setOption2(String option2) {
        this.option2 = option2;
    }

    public String getOption2() {
        return option2;
    }

    public void setOption3(String option3) {
        this.option3 = option3;
    }

    public String getOption3() {
        return option3;
    }

    public void setOption4(String option4) {
        this.option4 = option4;
    }

    public String getOption4() {
        return option4;
    }
}
4

0 に答える 0