我正在尝试动画片段之间的过渡。
但是在过渡开始时,视图是分开的
请告诉我如何避免这种情况?第一个视图必须在移动开始时消失。 谢谢!
@Override
public void onClickMessage(DialogItem item, View view) {
setSharedElementReturnTransition(TransitionInflater.from(getActivity()).inflateTransition(R.transition.change_image_transform));
setExitTransition(TransitionInflater.from(getActivity()).inflateTransition(android.R.transition.fade));
DetailsFragment fragment = new DetailsFragment();
fragment.setDialog(item);
fragment.setSharedElementEnterTransition(TransitionInflater.from(getActivity()).inflateTransition(R.transition.change_image_transform));
fragment.setEnterTransition(TransitionInflater.from(getActivity()).inflateTransition(android.R.transition.fade));
View ava = view.findViewById(R.id.ivPhoto);
ava.setTransitionName(DetailsFragment.AVA_TRANS);
View name = view.findViewById(R.id.tvName);
name.setTransitionName(DetailsFragment.NAME_TRANS);
FragmentTransaction ft = getFragmentManager().beginTransaction()
.replace(R.id.container, fragment)
.addToBackStack(null)
.addSharedElement(ava, DetailsFragment.AVA_TRANS)
.addSharedElement(name, DetailsFragment.NAME_TRANS);
ft.commit();
}
答案 0 :(得分:0)
好像你只有一个用于共享元素转换的视图。
您必须在布局中分隔您的观点 - ImageView
表示图标,TextView
表示“疯狂微笑”文字。有了这个,您可以为共享元素转换指定2个元素。然后他们将分开飞行。
可以找到好的解释过渡动画here (step-by-step)。