カード フリップ アニメーションを使用して交換したい 2 つのフラグメントがあります。
これが私のアニメーションファイルの1つです:
<?xml version="1.0" encoding="utf-8"?>
<set>
<!-- Rotate. -->
<objectAnimator
xmlns:android="http://schemas.android.com/apk/res/android"
android:valueFrom="0"
android:valueTo="180"
android:propertyName="rotationY"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"
android:duration="@integer/card_flip_time_full" />
<!-- Half-way through the rotation (see startOffset), set the alpha to 0. -->
<objectAnimator
xmlns:android="http://schemas.android.com/apk/res/android"
android:valueFrom="1.0"
android:valueTo="0.0"
android:propertyName="alpha"
android:startOffset="@integer/card_flip_time_half"
android:duration="1" />
</set>
私はこのような4つのファイルを持っています。それらはほとんどこのGoogle Demoからそのまま引用されています。私は 8 つ以上の SDK を持っているので、強く推奨されるNine Old Androidsライブラリを使用しています。ただし、まだ次のエラーが表示されます: Uknown animation name: objectAnimator
. objectAnimator のパッケージを Java ファイルにインポートできるので、JAR ファイルですべてが適切に構成されていると確信できます。以前にobjectAnimator
toを設定translate
(および属性値を変更) したところ、アニメーションが実行されましたが、私が求めているより複雑なものではありませんでした。
私が間違っているかもしれないことについて誰かアドバイスがありますか? 私はストローをつかみ始めています。
編集:念のため、ここに私のflipCard機能があります:
public void flipSalesCard(FragmentManager fm) {
if (salesShowingBack) {
salesShowingBack = false;
Fragment smallSSF = new SmallSalesSectionFragment();
FragmentTransaction trans = fm.beginTransaction();
trans.setCustomAnimations(R.anim.card_flip_left_in, R.anim.card_flip_left_out);
trans.replace(R.id.SalesInfoFragment, smallSSF);
trans.addToBackStack(null);
trans.commit();
return;
}
salesShowingBack = true;
Fragment expandedSSF = new ExpandedSalesSectionFragment();
FragmentTransaction trans = fm.beginTransaction();
trans.setCustomAnimations(R.anim.card_flip_right_in, R.anim.card_flip_right_out);
trans.replace(R.id.SalesInfoFragment, expandedSSF);
trans.addToBackStack(null);
trans.commit();
}