我需要在像side_in_left或者slide_out_right这样的片段替换时创建效果。
我用过:
getSupportFragmentManager().beginTransaction().setCustomAnimations(android.R.anim.slide_in_left, android.R.anim.slide_out_right);
OR
尝试此解决方案 Link
但两者都无效
这是我用于替换片段的代码:
FragmentFirst dragabbleFragment = new FragmentFirst();
getSupportFragmentManager().beginTransaction().setCustomAnimations(android.R.anim.slide_in_left, android.R.anim.slide_out_right);
getSupportFragmentManager().beginTransaction().replace(R.id.container, dragabbleFragment).commit();
答案 0 :(得分:0)
getSupportFragmentManager().beginTransaction().setCustomAnimations(android.R.anim.slide_in_left, android.R.anim.slide_out_right);
getSupportFragmentManager().beginTransaction().replace(R.id.container, dragabbleFragment).commit();
我可能错了,但可能是因为您正在调用beginTransaction()
两次,而您正在将动画应用于第一个FragmentTransaction
,但在第二个时调用replace(...)
。
...试
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.setCustomAnimations(android.R.anim.slide_in_left, android.R.anim.slide_out_right);
ft.replace(R.id.container, dragabbleFragment).commit();
编辑:试试......
getSupportFragmentManager().beginTransaction().setCustomAnimations(...).replace(...).commit();
显然用你需要的位替换...
部分 - 我把它们留下来以保持示例简短。