我有自定义视图。我重写了onDraw方法来绘制一个实心圆圈等等。我希望圆圈在红色和蓝色之间闪烁,间隔可以是100毫秒。我如何完成这样的动画?到目前为止我已经
了 @Override
protected void onDraw(Canvas canvas) {
this.mFilledPaint.setColor(Color.BLUE);
canvas.drawCircle(x, y, radius, mFilledPaint);
}
答案 0 :(得分:2)
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);
}
在构造函数中调用延迟的帖子,或者在其他感觉相关的函数中调用。