2秒ごとに円を生成したいのですが、この場合は5ですが、それを得ることはできません。 2秒ごとにサークルを作成する代わりに、アプリは10秒待って5つのサークルをまとめて描画します。私は間違って何をしていますか?ありがとうございました。あなたがメインスレッドを一時停止しているonDrawで実行を呼び出すことにより、2秒ごとに円を生成する方法
public class Juego extends SurfaceView{
boolean isItOK = false;
Paint paint;
int CantidadDeEsferas = 5;
int radio, alto, ancho;
public Juego(Context context, @Nullable AttributeSet attrs) {
super(context, attrs);
paint = new Paint();
}
public void onDraw(Canvas canvas){
paint.setColor(Color.WHITE);
canvas.drawRect(0, 0, getWidth(), getHeight(), paint);
paint.setColor(Color.BLACK);
for (int i=0; i<CantidadDeEsferas; i++) {
Random r = new Random();
alto = r.nextInt(canvas.getHeight());
ancho = r.nextInt(canvas.getWidth());
radio = r.nextInt(101 - 50) + 50;
canvas.drawCircle(ancho, alto, radio, paint);
run();
isItOK = true;
}
}
public void run(){
while (isItOK){
try
{
Thread.sleep(2000);
isItOK = false;
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}