我有多個矩形在視圖(畫布)的中間。我想將它們全部平滑地同時移動到屏幕的邊緣。這不是一個跳躍,我需要看到從開始到結束的位置之間的位置,以便它看起來像一個平滑的過渡。動畫矩形移動順利android視圖
最好的辦法是做什麼?
我有多個矩形在視圖(畫布)的中間。我想將它們全部平滑地同時移動到屏幕的邊緣。這不是一個跳躍,我需要看到從開始到結束的位置之間的位置,以便它看起來像一個平滑的過渡。動畫矩形移動順利android視圖
最好的辦法是做什麼?
試試這個代碼:
public class animatedView extends View {
Bitmap i;
int x=0;
int y=0;
public animatedView(Context context) {
super(context);
// TODO Auto-generated constructor stub
i = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);
}
@Override
protected void onDraw(Canvas canvas) {
// TODO Auto-generated method stub
super.onDraw(canvas);
Rect bk = new Rect();
bk.set(0, 0, canvas.getWidth(), canvas.getHeight());
Paint pBk = new Paint();
pBk.setStyle(Paint.Style.FILL);
pBk.setColor(Color.BLUE);
canvas.drawRect(bk, pBk);
canvas.drawBitmap(i, x, y, pBk);
x+=10;
invalidate();
}
}
希望它能幫助!
我沒有嘗試過,但不應該永久循環。我不認爲矩形會停在邊緣。 我的目標是在一個按鈕上點擊,將矩形移動到具有畫布繪製區域邊界的邊緣,並停止動畫。 另外,有沒有辦法在動畫期間停止觸摸事件的執行。 – user2943193 2014-09-03 22:58:56
但是,您可以根據自己的需要製作代碼,並且可以添加簡單的語句來參加您的目標只需要一點思考,在這種情況下,您可以對座標x進行測試,如果它參加了將停止的邊緣增加 – 2014-09-04 16:38:09
是的,你可以停止像這樣的按鈕的觸摸事件:btn.setEnabled(false); 並且有一些測試語句必須由您自己創建,您只能在註釋過程中停止它,這非常容易 – 2014-09-04 16:42:40
BouncingBalls.java sdk samples文件夾? – Selvin 2014-09-03 12:19:07