我有一个包含两列和 20 行的图像表。执行此 for 循环时,除了第一行仅显示左侧的第一个图像之外,所有行都工作正常。这真的很奇怪;执行顺序有问题吗?
var image= [];
var rows=5;
for (var i = 0; i < test.length; i++) {
var avatar = test[i].image; // The profile image
if(i % 2 === 0){
image[i]= Titanium.UI.createImageView({
top:row,
image:avatar
align:right
});
win.add(image[i]);
//trying to increase the image
row =row+200;
} else if(i % 2 === 1) {
image[i]= Titanium.UI.createImageView({
top:row,
image:avatar
align:left
});
win.add(image[i]);
}
}
最佳答案
i=0,i%2=0,显示图像(应该是正确的),row+=200;
i=1,i%2=1,显示图像(左侧),行保持不变
i=2,i%2=0,显示图像(右侧),行+=200
0%2 = 0,这代表你的右侧图像,然后它进入下一行。只需要尝试一下增加行的位置以及循环从哪一侧开始。
关于javascript - JavaScript 中 for 循环的奇怪行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4902948/