17

UITableViewを使用していて、さまざまなセルの高さを変更したいと思います。ただし、テーブルビューには現在編集しているUITextViewが含まれており、UIKeyBoardが起動しているため、このためにリロードデータを使用したくありません。

4

2 に答える 2

17

UITableViewでreloadRowsAtIndexPaths:メソッドを探しています。特定のセルの高さの再計算(およびその後の再描画)がトリガーされます。調整をアニメーション化して、ユーザーがスクロールしているときにリアルタイムで更新を実行できるようにすることもできます。これにより、高さが再計算されている間、テーブルビューが「ぎくしゃく」したり「途切れたり」することはありません。私はあなたが説明したことをするためにそれをうまく実装しました。

ソース: リロードせずにUITableViewCellを更新

于 2011-10-18T01:36:36.883 に答える
3

を呼び出すことができますbeginUpdates && endUpdates。これにより、セル全体をリロードせずに、テーブルセルの高さが再計算されます。

           UIView.setAnimationsEnabled(false)

            self.tableView.beginUpdates()
            self.tableView.endUpdates()
            // Re-enable animations
            UIView.setAnimationsEnabled(true)
于 2018-03-05T20:30:49.987 に答える