当用户以弯曲动作单击视图时,我使用以下代码移动视图:
R.transition.mytranstion:
<?xml version="1.0" encoding="utf-8"?>
<changeBounds xmlns:android="http://schemas.android.com/apk/res/android">
<arcMotion android:maximumAngle="90" android:minimumHorizontalAngle="45" android:minimumVerticalAngle="45"/>
</changeBounds>
然后,我在代码中添加过渡效果并将其应用于单击的视图,但是视图突然线性移动,而不是曲线移动。
ImageView img = (ImageView) v;
Transition transition = TransitionInflater.from(mContext).inflateTransition(R.transition.arc_motion);
transition.setDuration(android.R.integer.config_longAnimTime);
TransitionManager.beginDelayedTransition(mGridView, transition);
img.setTranslationX(400);
img.setTranslationY(800);
Snackbar.make(mRoot, R.string.arc_motion, Snackbar.LENGTH_LONG).show();
尝试动态定义ArcMotion和ChangeBounds而不是从资源中夸大,但结果是相同的。同样,在过渡上设置插值器或为其指定不同的持续时间也没有区别。怎么了?