我正在尝试编写一个包含多项选择测验的应用。我正在以简单而有点硬编码的方式编写它。我已经创建了一系列问题和一组二维答案作为我的“数据库”。我的问题是,当我迭代循环时,我的应用程序立即转到最后一个问题,即使在理想世界中的语句应该让用户与每个问题进行交互。
我的while循环是
var i = 0;
while i<10 then
make the question view
make the answer view
make the answers clickable
calculate scoring
if the next button is pushed and i < 8 then i+=1
/*this prevents the app from building but when i put the i+=1 outside this control statement it goes directly to the last question in my database*/
end While
任何想法?我的代码很长,不知道我是否应该发布
答案 0 :(得分:0)
不要在while循环中完成所有操作,而应该采用稍微不同的方法。
创建一个执行上面的while-loop-block的函数,并使用变量来跟踪当前显示的问题和答案。然后当用户点击下一个时,前进到下一对,直到用户完成。
var current = 0, until = 10;
function showCurrent() {
// make the question view
// make the answer view
// make the answers clickable
// calculate scoring
}
function goToNext() {
current += 1;
if (current === until) {
// carry on with whatever is next
}
else {
showCurrent();
}
}
showCurrent();