我不知道爲什麼這總是很難得到工作。我正在使用AppCompat庫和android.app.Fragment
。我嘗試添加動畫來左右滑動新的片段(就像iOS一樣),但是當添加片段時,他們會立即添加/刪除,而不需要任何動畫。R.animator with objectAnimators無法使用片段添加/刪除動畫
我在做什麼錯?
getFragmentManager()
.beginTransaction()
.setCustomAnimations(R.animator.slide_in_from_right, R.animator.slide_out_to_the_left)
.add(R.id.navrootlayout, fragment)
.addToBackStack(null)
.commit();
RES /動畫/ slide_in_from_right.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<objectAnimator
android:interpolator="@interpolator/decelerate_cubic"
android:valueFrom="1"
android:valueTo="0"
android:valueType="floatType"
android:propertyName="xFraction"
android:duration="3000"/>
</set>
RES /動畫/ slide_out_to_the_left.xml
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<objectAnimator
android:interpolator="@interpolator/decelerate_cubic"
android:valueFrom="0"
android:valueTo="-1"
android:valueType="floatType"
android:propertyName="xFraction"
android:duration="3000"/>
</set>
我連動畫的持續時間設置爲3000(即,3秒)這樣我才能明確地看到它是否被使用,但事實並非如此。該片段完全沒有任何動畫。我捕獲了它發生的屏幕視頻,並且新片段立即出現(並最終消失)。
什麼屬性爲 「xFraction」? – DeeV
Yeeeeaaaah,我剛剛花了最後一小時弄清楚。顯然,這個例子我得到這個從假設,我會添加自定義屬性,以我的Layout類,但他們沒有提到這一點。 –
我認爲,其原因是與動畫師沒有相對平移機制,所以你不能滑入。創建「xFraction」動畫(的「X」個我認爲)讓你做幻燈片的。 – DeeV