制作多个列表视图和项目的金字塔结构

时间:2012-08-03 13:16:11

标签: java android listview android-listview items

我正在尝试创建一个以文本视图(问题)开头的应用程序,然后在下拉列表选项(选择答案)下拉,具体取决于结果,如果单击该项目,它会带您到另一个视图问题文本视图和下拉列表视图选项。最后,根据您选择的选项,最终结果会有所不同。合理?寻找任何源代码或示例如何开始确保它非常重复所以任何事情都会让人满意。

1 个答案:

答案 0 :(得分:0)

要制作下拉列表,您需要使用详细here的微调器对象,然后您需要使用微调器适配器来填充此列表this may be useful

用户在测验中选择答案后,您可以使用不同的问题和答案重新填充相同的布局,通过更改answerArray并使用invalidate();重绘视图(如果他们获得了回答错误,你转而采用“Game Over”布局。

就存储问题和答案而言,我建议使用某种SQLite数据库。 SQLite数据库可以存储在应用程序的数据目录中。 Android提供了创建,编辑和读取数据库的方法check this out。大多数教程向您展示如何使用代码创建数据库,但如果您有预定义的数据库,那么您可以将其放在assets文件夹中并从那里将其复制到应用程序的数据目录中。

数据库会将问题存储在一个表中,而答案则存储在另一个表中。通过使用问题ID字段,您可以显示哪些答案属于哪个问题。您还可以使用true / false布尔字段显示哪些答案是正确的。

当应用程序将答案读入适配器时,您可以创建一个包含文本的答案对象以及布尔型正确/错误值

public class AnswerObject{
    public String text;
    public boolean isCorrect;

    public AnswerObject(){
        this.text = "";
        this.isCorrect=false;
    }
}

然后为问题中的每个答案创建一个对象,并将它们存储在一个数组中

AnswerObject[] answers = new AnswerObject[numberOfAnswers];
for(i=0; i<answers.length; i++){
     answers[i].text = textFromDatabase;
     answers[i].isCorrect = booleanFromDataBase; 
}

我为代码中的错误道歉。我手工打字。