0
我有三種動畫,比如縮放,平移和縮放。我按順序播放這些動畫。前兩個工作正常,但最後一個縮放動畫將視圖的位置重置爲原始位置。如果我刪除了最後一個縮放動畫,那麼在翻譯動畫之後視圖保持新位置時工作良好。你對這種行爲有什麼想法嗎?比例動畫重置位置
AnimationSet animationSet = new AnimationSet(false);
animationSet.setFillAfter(true);
ScaleAnimation scaleAnimation1 = new ScaleAnimation(0.0f, 1.0f, 0.0f, 1.0f);
scaleAnimation1.setDuration(500);
scaleAnimation1.setFillAfter(true);
TranslateAnimation moveAnim = new TranslateAnimation(0, -x, 0, -y);
moveAnim.setDuration(1000);
moveAnim.setStartOffset(500);
moveAnim.setFillAfter(true);
ScaleAnimation scaleAnimation2 = new ScaleAnimation(1.0f, 0.0f, 1.0f, 0.0f);
scaleAnimation2.setDuration(500);
scaleAnimation2.setStartOffset(1000);
scaleAnimation2.setFillAfter(true);
scaleAnimation2.setFillBefore(true);
animationSet.addAnimation(scaleAnimation1);
animationSet.addAnimation(moveAnim);
animationSet.addAnimation(scaleAnimation2);
「將視圖的位置重置爲原始位置」 - 您能更精確嗎?重置看起來像跳過屏幕?它重新設置爲何處。 Android SDK的動畫有一個常見的誤解/設計缺陷,可能會導致這種情況。 – Tom
我的意思是,在動畫之前,視圖是屏幕的中心。翻譯動畫之後,視圖會顯示在頂部。當'scaleAnimation2'開始時,視圖也會回到屏幕的中心 –