java - android.R.anim.fade_out 效果不好,只是淡入淡出

标签 java android android-animation

我想在带有动画的 fragment 之间切换。 目前,我使用这个:

FragmentTransaction fr = getFragmentManager().beginTransaction();
//fr.setCustomAnimations(R.anim.enter, R.anim.exit, R.anim.pop_enter, R.anim.pop_exit);
fr.setCustomAnimations(android.R.anim.fade_in,android.R.anim.fade_out);
fr.replace(R.id.fragment_container,new SwimSuitFragment());
fr.addToBackStack(null);
fr.commit();

fade_in 效果很好,但是当我按下返回时它会直接转到前一个 fragment ,并且不执行淡出动画。

最佳答案

来自官方文档;

The popEnter and popExit animations will be played for enter/exit operations specifically when popping the back stack.

public abstract FragmentTransaction setCustomAnimations (int enter, 
                int exit, 
                int popEnter, 
                int popExit)

你应该使用它而不是你的 setCustomAnimations

fr.setCustomAnimations(android.R.anim.fade_in,android.R.anim.fade_out,android.R.anim.fade_in,android.R.anim.fade_out);

关于java - android.R.anim.fade_out 效果不好,只是淡入淡出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55750468/

相关文章:

安卓设备版本

Android Facebook SDK 降低应用性能

java - 几个 View 的同步动画

android - 查看寻呼机,其中上一个和下一个项目尺寸较小,并具有无限滚动功能

java - 检索键值对作为映射

java - 将结果集中的值写入文本文件(.txt 文件)

java - 为单元测试生成第三方库的 stub 类

android - startActivityForResult 没有返回,但似乎我做的一切都正确

android - 动画列表中的所有项目

java - 通过用单例替换匿名类来减少内存占用。但是更需要重构设计