我有一个视图,我以
的随机度编程view.setRotation(rnd.nextInt(181));
我现在如何沿旋转方向移动视图?如果我使用
view.animate().translationXBy...
视图将向左或向右移动。有没有办法结合translationX和translationY使视图完全沿旋转方向移动?或者以任何其他方式实现这一目标?
答案 0 :(得分:1)
好的,我自己找到了毕达哥拉斯的解决方案:
float rotation = view.getRotation();
float translationX = (float)(Math.cos(Math.toRadians(rotation)) * distance);
float translationY = (float)(Math.sin(Math.toRadians(rotation)) * distance);
view.animate().translationXBy(translationX).translationYBy(translationY)
答案 1 :(得分:0)
通过视图setAnimation()方法使用补间动画集旋转和平移动画 例如:
RotateAnimation animation=new RotateAnimation(0, 360);
animation.setRepeatCount(-1);
animation.setRepeatMode(Animation.RESTART);
textView.setAnimation(animation);
animation.start();