Kel*_*ell 54 animation android transactions transitions android-fragments
我无法使用或了解如何从后台堆栈中弹出FragmentTransactions来处理自定义动画.具体来说,我希望它能够调用"out"动画,但似乎并没有.
我有一个简单的方法来处理片段事务(FragmentTransaction),我在其中添加片段并应用自定义转换以使其淡入/淡出.我还将此添加到后台堆栈,以便用户可以使用后退按钮撤消该事务,实际上导航到添加片段之前的状态.
protected void changeFragment() {
FragmentTransaction ft = fm.beginTransaction();
ft.setCustomAnimations(android.R.anim.fade_in, android.R.anim.fade_out);
ft.add(R.id.fragment_container, new TestFragment());
ft.addToBackStack(null);
ft.commit();
}
Run Code Online (Sandbox Code Playgroud)
一切都很好地向前发展,但当用户点击后退按钮时,过渡动画不会反转.我所期待的是当片段被删除时,它将使用淡出动画.相反它似乎弹出(没有动画),然后容器似乎淡入.我不确定这是发生了什么,但片段绝对不会淡出.
我的应用程序使用兼容性库来添加片段支持,但我认为这也适用于Honeycomb(android-11).有谁知道我在这里做错了什么,或者我只是期待太多?理想情况下,我想为片段设置动画,类似于Gmail(在Xoom上)通过单击消息然后使用后退按钮向后移动的方式.最好不必覆盖后退按钮功能并跟上我自己的片段状态,因为我可能有几个"交易",我想要退出,我不是重新发明轮子的粉丝.
Android开发者小组也问过:http://groups.google.com/group/android-developers/browse_thread/thread/1136a3a70fa0b6e9
小智 49
我用这个:
ft.setCustomAnimations(R.anim.slide_in, R.anim.hyperspace_out, R.anim.hyperspace_in, R.anim.slide_out);
Run Code Online (Sandbox Code Playgroud)
当按下后退按钮时,转换工作相反.
| 归档时间: |
|
| 查看次数: |
26546 次 |
| 最近记录: |