OK、これはパズルです。似たような投稿が1件ありますが、数え切れないほど似ているので、こちらを投稿します。:)
ヘッダーとフッターを持つグループ化されたUITableViewがあります。フッターには、2 つのUIButtonビューが並んで含まれています。主要なものは何もありません。
さて…このテーブルビューの下部にあるUIToolbarにトグルボタンがあり、情報を増やしたり減らしたりできます。そこで、フェード行アニメーションを使用して削除/挿入するインデックス パスを構築し、通常のすべての要素を間に挟んでUITableViewbeginUpdates
をendUpdates
呼び出します。これで問題なく動作します。また、フッターがディスプレイの下部を越えて押し出されることもあります。
ここが変なところです。画面上で指をドラッグしてビューを上にスクロールすると、最終的にそのフッターが表示されるはずですよね?
ええと…ほとんどの場合、私はそうします。しかし、スクロールを速くするために指を上にフリックすると、フッターが表示されません。その領域をタップしようとしても、応答がありません。
ただし、もう一度下にスクロールして、そのフッターを非表示にする (またはフッターが通常ある領域を非表示にする) と、上にスクロールすると、再びそこに表示されます!
これは、行を挿入する場合にのみ発生します。行を削除すると、フッターはそのまま残ります…もちろん、すでに非表示になっていて、前述の呪文を実行して元に戻さなかった場合を除きます。:)
私はこれを追跡しようとしていますが、役に立ちません。スクロール操作をトレースするのはちょっとクレイジーな提案だと思います! おそらくいくつかの創造的なログ…提案、誰か? それとも、行の挿入/削除に関する 3.1 の既知の問題ですか? (3.1まで見た記憶がありません。)