傢伙我想用不同的顏色來畫一個弧線,但它並不顯示在活動任何東西,我是新到Android,OnDraw的android系統中的ImageView,哪些錯誤
感謝,
@Override
public void onDraw(Canvas canvas)
{
try {
Paint paint=new Paint();
paint.setColor(Color.RED);
Random rnd = new Random();
paint.setAntiAlias(true);
paint.setStrokeWidth(12);
Path obj=new Path();
RectF rf=new RectF();
RectF rectF = new RectF(50, 20, 500, 580);
canvas.drawArc (rectF, 90, 45, true, paint);
int i;
for(i=0;i<500;i++)
{
Thread.sleep(10000);
paint.setARGB(255, rnd.nextInt(256), rnd.nextInt(256), rnd.nextInt(256));
canvas.drawPath(obj, paint);
}
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
我想顯示,像一個動畫,不斷吸引,直到我們阻止他們。這就是爲什麼我使用線程,你能建議我怎麼做? –
@RussianFederation onDraw方法在主(UI線程)中被調用。當你做你所做的事情時,UI線程永遠掛在你的onDraw方法中,導致Android無法重繪任何東西!你必須調用invalidate()方法來重畫。這個答案建議在asynctask中做。事實上這是正確的答案。 –