我现在正在学习Tween Animation,所以我制作了一个非常简单的动画,如
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false"
android:duration="5000"
android:fillAfter="true"
android:interpolator="@android:anim/accelerate_decelerate_interpolator">
<translate
android:fromXDelta="100%p"
android:toXDelta="0%p"/>
</set>
我希望ImageView从屏幕的右边缘向左移动。 ImageView位于屏幕底部的片段中,
public class BottomFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.bottom_fragment, container, false);
ImageView back = (ImageView)view.findViewById(R.id.bottomback);
Animation move = AnimationUtils.loadAnimation(getActivity(), R.anim.move);
back.startAnimation(move);
return view;
}
}
我认为fromXDelta="100%p"
会将图片的左上角放在右边缘,toXDelta="0%p"
会将图片的左上角放在左边缘。但是图像似乎从远离边缘移动到屏幕并停在屏幕中间。看起来位置是图像的中心而不是左上角。我糊涂了。 Tween Animation中的坐标系如何工作?我应该如何从屏幕/片段的边缘开始?
答案 0 :(得分:0)
好吧,现在好像:
fromXDelta=100%
或100%p
。