私が開発しているアプリは、画像のグリッドを表示します。画像をタップすると、詳細ビューに移動します。詳細ビューには、グリッド内のすべての画像間をスワイプできる ViewPager が含まれています。これは、パスのリスト (グリッド内のすべての画像を含む) と、タップされた画像のオフセットを渡すことによって行われるため、ViewPager はそのページを最初に表示するように設定できます。
ViewPager の現在のオフセット ページの Fragment 内で共有要素遷移を行う最良の方法は何ですか? グリッド (RecyclerView) 画像は、現在のページの全画面画像に展開されます。アクティビティの遷移を延期および再開する機能を確認したので、アプリは、画像がディスクから読み込まれるまで、共有要素の遷移の表示を待機します。しかし、ビューページャーで正しいページにアニメーション化し、ユーザーが戻ったときに現在のページに戻ることができるようにしたいと考えています (ページ間をスワイプできるため)。ここで別のページにスワイプすると、最初のページがアニメーションでグリッドに戻ります。
現在、ビューページャーのフラグメント内のすべての画像に、「image_[index]」形式の transitionName を割り当てています。詳細アクティビティを開始するときは、インデックスをオフセットとして同じ transitionName を使用します。
これに関連して、長押しで波紋を機能させる方法も考えていました。ビューのアクティブ化状態を変更すると、リップルがキャンセルされるようです。波紋が再び始まり、長押しが完了してアクティブ化状態をトリガーした後、すぐに終了する、Gmail に似た効果が必要です。