0
我試圖動畫片段的表現在一個非常基本的方式,但它不工作:Android的碎片`setEnterTransition`不起作用
MyFragment myFragment = (MyFragment) getFragmentManager().findFragmentById(R.id.myFragment);
getFragmentManager().beginTransaction()
.hide(myFragment)
.commit();
Slide slideRight = new Slide(Gravity.RIGHT);
slideRight.setDuration(3000);
Slide slideLeft = new Slide(Gravity.LEFT);
slideLeft.setDuration(3000);
myFragment.setEnterTransition(slideRight);
myFragment.setExitTransition(slideLeft);
後來
getFragmentManager().beginTransaction()
.show(myFragment)
.commit();
但片段只是出現沒有任何轉換。我無法弄清楚它爲什麼不動畫。
編輯: 我最終使用的片段支持庫setCustomAnimations
原因本地庫不支持與相對值的動畫。 同時使用setEnterTransition
的新API似乎無法與show/hide
正常工作,並且由於某些未知原因,僅與replace
一起工作,這不符合我的需要。
我想你需要使用overridePendingTransaction(除非這是僅限於活動,在這種情況下忽略此註釋) – Zoe