我有一个RecyclerView。当我点击一个项目时,我开始一个带有共享元素过渡动画的新活动。在这个"孩子"活动我有一个ViewPager,我可以移动到其他项目,然后按返回。 所以我需要更改" parent"中的sharedElement-view。活动,以便将反向过渡应用于正确的项目。
我怎样才能实现这一目标?我们在 makeSceneTransitionAnimation 中设置了sharedElement但是如何为反向动画更改它?
答案 0 :(得分:0)
您必须在First Activity中使用SharedElementCallback,如下所示:
private final SharedElementCallback exitTransitionCallBack = new SharedElementCallback() {
@Override
public void onMapSharedElements(List<String> names, Map<String, View> sharedElements) {
sharedElements.clear();
sharedElements.put("transition name 1", view1);
sharedElements.put("transition name 2", view2);
}
};
当您从第二个活动回到第一个活动时,将执行此代码,反之亦然。
不要忘记onCreate:
setExitSharedElementCallback(exitTransitionCallBack);