Xiaobai pidió ayuda a los expertos en programación de Android. ¿Cómo puedo mostrar lentamente 10 círculos uno tras otro?
La clase pública DrawCircle extiende la Vista
{
Paint p = new Paint(Paint.ANTI_ALIAS_FLAG);
int color; p>
p>
int x=0;
int y=0;
int r=0;
int n=0 ;
int needUpdate = 0;
DrawCircle círculo = null;
DrawCircle público(Context con, AttributeSet attr)
{
super(con,attr);
círculo = esto;
nuevo hilo(nuevo Runnable()
{
@Override
public void run()
{
while(n < 10)
{
Hilo de dormir(500);
needUpdate = 1;
círculo.postInvalidate();
n ++;
} p>
}
}).start();
}
@Override
protegido void onDraw(Canvas c )
{
super.onDraw(c);
prueba
{
if (needUpdate = = 1)
{
needUpdate = 0;
gen();
p.setColor(color );
p.setStyle(Paint.Style.FILL);
c.drawCircle(x, y, r, p);
} p>
}
catch (InterruptedException e)
{
e.printStackTrace();
}
}
public void gen()
{
color = Color.rgb(rand(0,255),rand(0,255),rand( 0,255));
x=rand(0,1200);
y=rand(0,1200);
r=rand(50,150);
}
público int rand(int a, int b)
{
return((int)((b-a +1)*Matemáticas .random() + a));
}
}
p>
Lo escribí a mano, no sé si está mal. Échale un vistazo