Android For循环不停止
我正在 Android 上玩 2D 图形。我使用 for 循环生成 x 和 y 的随机生成器。奇怪的是,循环永远不会停止:
for (int i = 0; i < 5; i++){
System.out.println(i);
invalidate();
int randomX = randomGenerator.nextInt(1000);
int randomY = randomGenerator.nextInt(1000);
canvas.drawPoint(randomX, randomY, paint);
float radius = 20;
canvas.drawCircle(randomX, randomY, radius, paint);
}
我查看 logcat,它显示 i = 0,1,2,3,4。我是不是要瞎了???我=
I'm playing around with 2 d graphics on android. I'm using random generator for x and y using a for loop. weird thing is that the loop never stops:
for (int i = 0; i < 5; i++){
System.out.println(i);
invalidate();
int randomX = randomGenerator.nextInt(1000);
int randomY = randomGenerator.nextInt(1000);
canvas.drawPoint(randomX, randomY, paint);
float radius = 20;
canvas.drawCircle(randomX, randomY, radius, paint);
}
i look at the logcat it shows i = 0,1,2,3,4. am i going blind??? i =
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
如果您的
for
循环位于视图的onDraw()
方法内,则调用invalidate()
将强制视图重新绘制自身,调用 < code>onDraw() 再次,从而无限循环。If your
for
loop is inside theonDraw()
method of a view, callinginvalidate()
will force the view to redraw itself, callingonDraw()
again, thus the infinite loop.