我正在构建一个简单的MCQ测验应用程序。
我所做的是在Parse.com上建立一个数据库并存储问题,可能的答案和正确的解决方案。
Parse.com表格可以在此图片中看到:http://i.imgur.com/yXQ2FX1.png
如您所见,每个对象都有一个问题,有4个可能的选项和正确答案。
现在,我想在TextView中显示问题,并在四个不同的按钮内显示选项。用户将点击正确的按钮进行回答,应用程序将检查是否按下了正确的按钮。
如何将特定对象属性中的内容检索到文本视图或按钮中?
注意:我尝试按照查询的在线文档进行操作。他们的示例展示了如何通过查询检索对象,而不是如何在TextViews中显示这些对象或如何将这些对象存储在局部变量中。例如,我知道如何查询特定对象,但是一旦我得到对象如何检索该对象的特定属性,我如何获得存储在" optionA"字段并将其存储在字符串中?
我知道有一个ListView适配器,但是你可以看到我不能在这里使用ListView。 我尝试使用以下代码尝试将查询的对象转换为字符串,但这并不起作用。我真的是个新手,所以也许我做的事情很愚蠢。请帮帮我。
答案 0 :(得分:5)
尝试类似:
query.whereEqualTo("ques",/*enter question number here*/);
query.findInBackground(new FindCallBack<ParseObject>(){
public void done(List<ParseObject> l; ParseException e){
if(e == null){
for(int i = 0; i <l.size();i++){
textView.setText(l.get(i).getString("optionA"))
}
}
else{//handle the error
}
}
});
答案 1 :(得分:1)
一旦你得到了这个对象(你说你知道怎么做),就可以访问这样的属性:
String theQuestion = object.getString("question");
将它放在textview中就像这样:
yourTextView.setText(theQuestion);
您可以在Android指南中获得有关对象访问的更多信息:
答案 2 :(得分:0)
看看你是否要导入整个数据库,你可以继续使用以下代码(类结构有一个简单的BOY和GIRL记录) -
ParseQuery<ParseObject> query = ParseQuery.getQuery("Friends");
//query.whereEqualTo("Boy", tf3.getText().toString()); //This is to filter things!
query.findInBackground(new FindCallback<ParseObject>() {
public void done(List<ParseObject> scoreList, ParseException e) {
if (e == null) {
int len=scoreList.size();
for(int i=0;i<len;i++) {
ParseObject p = scoreList.get(i);
String boy = p.getString("Boy");
String girl = p.getString("Girl");
}
} else {
Log.d("score", "Error: " + e.getMessage());
}
}
});