私が取り組んでいるアプリには、ゼロ行を含むセクションを含めることができるプレーンスタイルのUITableViewがあります。scrollToRowAtIndexPath:atScrollPosition:animated:を使用してこのセクションにスクロールできるようにしたいのですが、子行がないためにこのセクションにスクロールしようとするとエラーが発生します。
Appleのカレンダーアプリケーションはこれを行うことができます。カレンダーをリストビューで見て、今日のカレンダーにイベントがない場合、今日の空のセクションが挿入され、ツールバーの[今日]ボタンを使用してスクロールできます。画面の下部にあります。私が知る限り、AppleはカスタマイズされたUITableViewを使用しているか、プライベートAPIを使用している可能性があります...
私が考えることができる唯一の回避策は、高さ0ピクセルの空のUITableCellを挿入し、そこまでスクロールすることです。しかし、さまざまな高さのセルがあると、スクロールのパフォーマンスが非常に悪くなることを理解しています。それでも私はとにかくそれを試してみます、多分パフォーマンスヒットはそれほど悪くないでしょう。
アップデート
これに対する解決策がないように思われるので、私はアップルにバグレポートを提出しました。これがあなたにも影響を与える場合、これをより早く修正したい場合は、rdar:// problem / 6263339(レーダーリンクを開く)の複製を提出してください。
アップデート#2
私はこの問題に対してまともな回避策を持っています。以下の私の答えを見てください。