オブジェクトを返す必要がある場所から独自のTransitionGenerator
オーバーライドを実装する必要があります。generateNextTransition()
Transition
このgenerateNextTransition()
メソッドは次のとおりです。
RectF drawableBounds
: に設定されているドローアブルの境界KenBurnsView
。
RectF viewport
KenBurnsView
オブジェクトの境界。
Transition
コンストラクターは次のものを取ります。
RectF srcRect
: トランジションの開始時に全体を埋めるドローアブルのサブ長方形KenBurnsView
(下図):
ウィキペディアのイラスト
RectF dstRect
KenBurnsView
:遷移が終了したときに全体を埋めるドローアブルのサブ長方形。
long duration
: 遷移の継続時間 (ミリ秒)。
Interpolator interpolator
: 動きの性質を定義する補間インスタンス ( AccelerateDecelerateInterpolator
、LinearInterpolator
など)。
最後の遷移が停止した場所からすべての遷移を開始したい場合は、保存dstRect
して次の遷移で使用することをお勧めします。srcRect
がまさにそれRandomTransitionGenerator
です。srcRect
とdstRect
は異なるサイズを持つことができることに注意してください (ただし、画像を常にシーンに保持したい場合は、両方とも の準長方形にする必要がありますdrawableBounds
)。両方のアスペクト比が同じであることが重要ですviewport
。