0

それぞれ 5 つのテキスト フィールド (グリッドのようなもの) を含むカスタム セルを使用して UITableView を作成しました。セルはインラインで編集できます (別のビューに移動する必要はありません)。

reloadData の使用に関しては、いくつかの奇妙な欠陥に直面しています。

  • 私のテーブル フッターは動的です (セルに基づいて値を計算します)。セルを更新するたびに reloadData を呼び出す必要がありますか? または、フッターのみを更新する方法はありますか?

  • セルの編集を開始して空のままにすると (テキストフィールドにテキストを書き込まないでください)、reloadData を使用した場合、セルは編集モードに移行しません。空のセルで reloadData を実行する場合、既知の欠陥はありますか?

基本的に、reloadData を使用するためのベスト プラクティスについてよくわからず、どこにもガイドが見つかりませんでした。アドバイスをいただければ幸いです。

よろしく、ジョナサン

4

1 に答える 1

0

テーブルビューでのリロードを最小限に抑え、他の方法でテーブルを更新できない場合にのみ使用してください。
たとえば、行を削除する場合、リロードは必要ありません。必要に応じて、deleteRowsAtIndexPaths または deleteSections を使用してください。

他のビューは、プロパティを更新するだけです。たとえば、フッターにラベルがある場合は、そのテキスト プロパティを設定するだけです。テーブルのリロードは必要ありません。

cellForRowAtIndexPath メソッド以外のセルの一部のプロパティを直接編集できないと思います。このような場合、cellForRowAtIndexPath メソッドを呼び出すテーブルのリロードが必要になります。

于 2009-05-14T15:06:02.357 に答える