2017-01-30 19 views
0

私のAndroidアプリケーションのアクティビティの1つのスライドアップエフェクトを作成しようとしています。アニメーション。このアプローチの活動B.問題における仕上げ()の後にアクティビティ遷移を使用すると、ビューが個別に/個別に遷移しています

  1. 活動AでstartActivity()の後overridePendingTransition(R.anim.slide_in_bottom, R.anim.stay)overridePendingTransition(R.anim.stay, R.anim.slide_out_bottom)::私の研究に従って、これを実現するには2つの方法があり、私はのためのリスナーを設定する必要がありますさらなるアニメーションを実行するためにアクティビティBのアニメーション/トランジションを入力してください。ではありません。は、onCreate()で何らかの遅延を想定しています。それ以外は、このアプローチは完璧に機能します。

  2. 「新しい」(実際はもはや)アクティビティトランジションAPIを使用して、アクティビティBの入力トランジションと終了トランジションの両方に対してandroid.transition.Slideを実行し、スライドのエッジをボトムに設定します。このアプローチの問題:Thisこのアプローチを使用すると、奇妙な分離/個々のビューの遷移が導入されます。 (それは必要はありませんように私はXMLでtransitionSetまたはコードでデフォルトコンストラクタからスライドを使用しています、ここで任意のコードを貼り付けていない)

だから私の質問は、実際のリスナーを持っているが方法ですアプローチ1のために私は知らないか、アプローチ2でその奇妙な分離を排除する方法がありますか?

答えて

0

アニメーション化する必要があるビューを「遷移グループ」に配置します。

+0

それを試してみよう! –

+0

一般的には、ステータスバーのバックグラウンドでアクティビティの内容でTransitionGroupを共有する方法がわかりません。 DecorViewでisTransitionGroupをtrueに設定すると、そのようには見えません... –

0

Ottoを使用して、アプローチ1のリスナーを作成できます。基本的には、アプリケーションのさまざまな部分と通信するために使用できるメカニズムを提供するイベントバスです。

+0

私はそれほど(実際に)冗長な膨らみ/コードをアプリに追加する価値はないと思う。 –

関連する問題