我正在开发一个应用程序,我需要制作一个圆形布局,当用户旋转图像时,它会旋转。我为此目的使用了 CoordinatorLayout ,但它导致了迟钝的动画,甚至导航导航也开始滞后。有没有办法解决这些问题? 下面是旋转CoordinatorLayout的TouchListener。
private class MyOnTouchListener implements View.OnTouchListener{
private double startAngle;
@Override
public boolean onTouch(View v, MotionEvent event) {
switch(event.getAction()){
case MotionEvent.ACTION_DOWN:
startAngle = getAngle(event.getX(),event.getY());
t.setText(""+startAngle);
break;
case MotionEvent.ACTION_MOVE:
double currentAngle = getAngle(event.getX(),event.getY());
double finalA = currentAngle-startAngle;
RotateAnimation animation = new RotateAnimation((float)startAngle,(float)currentAngle,w/2,w/2);
animation.setFillAfter(true);
animation.setDuration(0);
rl.setAnimation(animation);
rl.startAnimation(animation);
startAngle=currentAngle;
break;
case MotionEvent.ACTION_UP:
break;
}
return true;
}
}