我在我的示例应用程序中使用手势监听器,并且在其中; s onFling()方法我想要执行旋转和翻译动画。
个人都可以正常工作,但是当我将它集成到动画集中时,它无法正常工作。
请建议我如何处理。
以下是我的onFling方法的代码:
onFling(MotionEvent e1,MotionEvent e2,float velocityX, float velocityY){
translateAnimation = new TranslateAnimation(0,x2,0,y2); // x2=e2.getX() and y2=e2.getY()
translateAnimation.setDuration(3000);
rotateAnimation = new RotateAnimation(0, 90, RotateAnimation.RELATIVE_TO_SELF, RotateAnimation.RELATIVE_TO_SELF);
rotateAnimation.setStartOffset(1400);
rotateAnimation.setInterpolator(new AccelerateInterpolator());
animationSet.addAnimation(translateAnimation);
animationSet.addAnimation(rotateAnimation);
animationSet.setAnimationListener(this);
animationSet.setDuration(3000);
lastView.startAnimation(animationSet);
}
感谢你很多
答案 0 :(得分:0)
我想旋转图像并使用动画进行翻译。
使用AnimationSet
。
我也尝试使用AnimationSet,但同样没有任何事情发生。
然后您的代码中存在错误。
请建议我怎么做。
使用AnimationSet
。
答案 1 :(得分:0)
试试这个
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.rotate);
AnimationSet snowMov1 = new AnimationSet(true);
RotateAnimation rotate1 = new RotateAnimation(0, 360,
Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF,
0.5f);
rotate1.setStartOffset(50);
rotate1.setDuration(300);
rotate1.setRepeatCount(-1);
snowMov1.addAnimation(rotate1);
TranslateAnimation trans1 = new TranslateAnimation(
Animation.RELATIVE_TO_PARENT, 0.1f,
Animation.RELATIVE_TO_PARENT, 0.3f,
Animation.RELATIVE_TO_PARENT, 0.0f,
Animation.RELATIVE_TO_PARENT, 0.9f);
trans1.setDuration(300);
trans1.setRepeatCount(-1);
snowMov1.addAnimation(trans1);
ImageView view = (ImageView) findViewById(R.id.image);
view.startAnimation(snowMov1);
}