2011-03-12 40 views
1

我在android上玩2D圖形。我使用for循環爲x和y使用隨機生成器。奇怪的是,循環從未停止:Android For Loop不停止

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它顯示我= 0,1,2,3,4。我是否會失明? I =

+1

打印4後顯示的值是多少? – 2011-03-12 12:16:56

+1

你是什麼意思,它不停止?如果你的logcat只顯示i = 0,1,2,3,4而沒有其他的,那麼它已經停止。 – 2011-03-12 12:17:45

+0

'System.out.println'不應該在logcat中打印任何東西。使用'Log.i'或'System.err.println' – Maaalte 2011-03-12 12:46:33

回答

2

如果您for循環是一個視圖的onDraw()方法中,調用invalidate()將強制視圖重繪自身,再次調用onDraw(),這樣無限循環。