I持って次のシナリオ...私は最初UICollectionViewをロードすると、それはヘッダなしで画面の下から上にスライドさせる必要UICollectionViewヘッダ高アニメーション
。これはかなり簡単です。
アイテムを追加するプロセスをユーザーに引き継ぐ「追加」セルがあります。このプロセスの最後に、リストをもう一度表示しますが、今回はヘッダーを表示します。ヘッダーはフェードインする必要があり、同時に更新されたリストは下から上にスライドします。
必要条件は、両方の後にリストを含むヘッダースクロールが配置されていることです。これはほとんどの場合のデフォルトの動作です。
私が抱えている問題は、ヘッダーが表示されている間にリストスライドをアニメーション化するための実行可能なメソッドが用意されていることです。
単純にヘッダの高さをアニメーション化することです。基本的に、ビューの高さに等しい高さで開始し、それを最終的なサイズにアニメーション化します。これにより、リストの残りの部分が自動的に引き込まれ、スライドインされているように見えます。
私はこの方法のいくつかのバリエーションを成功させて試しました。私は問題なく高さを設定できますが、アニメーション化できませんでした。
私はreferenceSizeForHeaderInSectionから適切な高さを返すだけで、データを再読み込みするとそれを処理すると思っていました。少なくともそれは私がSOのメッセージから集めたものです。私はレイアウトとperformBatchUpdatesを無効にしてみました。
ヘッダーの内容をコレクションビューの最初の行に置き、行0の高さにアニメーションを適用すると、これが簡単になりますか?
どの戦略が最適かわかりません。