1

フラグメント遷移をアニメーション化しようとしていますが、setCustomAnimationsのxmlでobjectAnimatorを使用すると動作しますが、実行時に開始位置と終了位置を設定する必要があるため、オーバーライドできることがわかりましたonCreateAnimatorカスタムアニメーターを返します。xmlなしのカスタムフラグメントアニメーション

私はおそらく何かが不足していますが、アニメーターの目標として何を設定するのでしょうか?

@Override 
public Animator onCreateAnimator(int transit, boolean enter, int nextAnim) { 
    ObjectAnimator animator = ObjectAnimator.ofFloat(???, "y", 2392.0f, 2300.0f); 
    return animator; 
} 

私はこの

ObjectAnimator animator = ObjectAnimator.ofFloat(this, "y", 2392.0f, 2300.0f); 

ようにそれを設定する例を見ましたが、その後、私は

(それがフラグメントでそれを探しているので、理にかなって)何のSETYの方法が存在しないというメッセージが表示されます

私はonCreateViewに膨らんだViewをターゲットに設定しようとしましたが、それは助けになりませんでした。

Docsはこの方法に関して少し欠けていますので、どんな助けも素晴らしいでしょう。

おかげ

答えて

0

は、私はちょうど同じ問題に遭遇した、と私はnullにしようとしない理由を、と思いましたか?素晴らしいアイデアのようには見えませんでしたが、それは魅力のように機能しました!

@Override 
public Animator onCreateAnimator(int transit, boolean enter, int nextAnim) { 
    return ObjectAnimator.ofFloat(null, "y", 2392.0f, 2300.0f); 
} 
関連する問題