我一直在寻找,但我找不到有助于解决这个特殊问题的答案.
我的应用程序有一个自定义的滑入,滑出效果,如下所示:
Intent intent = new Intent(getApplicationContext(), MyActivity.class);
startActivity(intent);
overridePendingTransition(R.anim.slide_right_in, R.anim.slide_right_out);
问题
问题是我在所有活动中都包含BottomNavigation,我不希望它被动画化,我想要排除它.
我想要实现的目标
我想从动画中排除底部导航.或者,换句话说,我怎样才能在转换之间设置动画内容?
编辑:我已经尝试使用共享元素,但我希望它在API 21下工作.
最佳答案 从overridePendingTransition()API中排除组件是不可能的.相反,您必须移至 Transitions API.特别是,这是
Slide
过渡动画,您可以在其中排除底部导航视图.
Transition slide = new Slide(Gravity.RIGHT);
slide.excludeTarget(bottomNavigationView, true);
getWindow().setEnterTransition(slide);
见详细的实施here.
您可以看到support transition package将Transitions API功能向后移植到API 14.但是我在类列表中找不到幻灯片转换.否则你可以使用TransitionEverywhere
.