如何在座標Y,a canvas.drawCircle
中移動?Animate canvas.drawCircle
我想讓感覺像是在屏幕上觸摸的圓圈,但我不知道如何爲它設置動畫效果。
我的onDraw:
public void onDraw(Canvas canvas) {
super.onDraw(canvas);
int x = getWidth();
int y = getHeight();
anchoX = x;
anchoY = y;
Paint paint = new Paint();
paint.setStyle(Paint.Style.FILL);
paint.setColor(Color.BLUE);
canvas.drawPaint(paint);
/*Texto*/
paint.setColor(Color.BLACK);
paint.setTextSize(80);
canvas.drawText("CONECTA 4", 70, 130, paint);
/*Separador*/
paint.setColor(Color.parseColor("#5C5C5C"));
canvas.drawRect(0, 200, 600, 210, paint);
/*Tablero*/
int radius = 25;
for (int i = 0; i < Game.NFILAS; i++)
for (int j = 0; j < Game.NCOLUMNAS; j++){
if (game.estaVacio(i,j)){
color = Color.WHITE;
paint.setColor(color);
canvas.drawCircle(getPixelFromColumna(j), getPixelFromFila(i), radius, paint);
} else if (game.estaJugador(i,j)){
paint.setColor(coloreado);
canvas.drawCircle(getPixelFromColumna(j), getPixelFromFila(i), radius, paint);
} else {
color = Color.RED;
paint.setColor(color);
canvas.drawCircle(getPixelFromColumna(j),getPixelFromFila(i), radius, paint);
}
}
}
可以通過更改正確的值來完成動畫製作,然後使其無效。也許你可以看看[ValueAnimator](http://developer.android.com/intl/zh-CN/reference/android/animation/ValueAnimator.html)。這從起始值變爲您的首選值。添加一個OnUpdateListener。在onUpdate: - 設置值 - 無效視圖 –
你能給我一個方法或方法的例子嗎? –
'int yCoordinate = [您的目標座標] ValueAnimator animator = ValueAnimator.ofInt(0,yCoordinate); animator.addUpdateListener(新ValueAnimator.AnimatorUpdateListener(){ @覆蓋 公共無效onAnimationUpdate(ValueAnimator動畫){ view.setYCoordinate(); //設置您的y座標和無效的觀點 } }); animator.setDuration([ANY DURATION]); animator.start();' –