2014-01-05 4 views
0

저는 사용자 정의보기가 있습니다. onDraw 메서드를 재정 의하여 다른 것들 중에서 채워진 원을 그립니다. 원이 빨간색과 파란색으로 번갈아 가며 원한다면 간격은 100 밀리 초가 될 수 있습니다. 그런 애니메이션을 어떻게 완성 할 수 있을까요? 지금까지 나는android canvas로 그려진 애니메이션 원/플래시 서클

@Override 
protected void onDraw(Canvas canvas) { 
    this.mFilledPaint.setColor(Color.BLUE); 
    canvas.drawCircle(x, y, radius, mFilledPaint); 
} 

답변

1
int color = Color.BLUE; 
postDelayed(new Runnable() { 
    @Override 
    public void run() { 
     color = (color == Color.BLUE) ? Color.Black : Color.BLUE; 
     invalidate(); 
     postDelayed(this, 100); 
    } 
}, 100); 

@Override 
protected void onDraw(Canvas canvas) { 
    this.mFilledPaint.setColor(color); 
    canvas.drawCircle(x, y, radius, mFilledPaint); 
} 

전화 관련성 느낄 생성자 또는 아니 다른 기능을 지연 포스트가 있습니다.

+0

답장을 보내 주셔서 감사합니다. 내 방법으로 당신의 스 니펫은 어디로 갈까요? 귀하의 스 니펫을 포함시키기 위해'onDraw'를 다시 작성해 주시겠습니까? 나는 그것으로 놀고, 아무것도 작동하지 않는다. 심지어 100에서 1000으로 변경했습니다. – learner

+0

수정 된 답변보기 – Triode

관련 문제