我有两项活动:A
和B
。两者都有ViewPager图像。
使用" current"进行共享活动转换图像作为共享元素。例如,如果用户滚动到第三个图像,则共享元素名称为image_2
。
要执行转换,我只需调用:
ActivityCompat.startActivityForResult(activity, intent, requestCode,
ActivityOptionsCompat.makeSceneTransitionAnimation(activity, sharedElements)
.toBundle());
这完美无缺。
我想为A
(来电者活动)添加自定义退出转换。后者应该淡出另一种观点。
我如何实现这一目标?
答案 0 :(得分:0)
您可以使用以下方法指定退出,重新输入,输入和返回转换。
getWindow().setEnterTransition(getEnterTransition());
getWindow().setReturnTransition(getReturnTransition());
getWindow().setExitTransition(getExitTransition());
getWindow().setReenterTransition(getReenterTransition());
当然,在您的情况下,您只需要设置退出转换。但我之所以包含这个,你可能想要从你的来电活动中设置重新转换。
要回答您的问题(淡出),您可以像这样使用淡入淡出过渡
@SuppressWarnings("NewApi")
private Transition getExitTransition() {
Fade fadeOut = new Fade(Fade.OUT);
fadeOut.excludeTarget(android.R.id.navigationBarBackground, true);
fadeOut.excludeTarget(android.R.id.statusBarBackground, true);
fadeOut.setInterpolator(new FastOutLinearInInterpolator());
fadeOut.setDuration(150);
return fadeOut;
}
您可能会注意到我排除导航栏和状态栏,它是为了阻止white blinking problem.
你去了,我希望这有帮助。