1

基本的にユーザーがアプリで行うすべての会話の ID を格納する NSMutableArray _conversationsArray があります。その値に基づいて、tableView に異なる数の行を表示します。データ ソースから会話を削除し、tableView のリロードをトリガーすると、numberOfRowsInSectionメソッドがトリガーされ、ブレークポイントを設定して、その配列内の要素 (会話) の数を確認します。

ここに画像の説明を入力

すべて問題ないようです。削除前に 2 つあったので、結果は 1 つのオブジェクトです。問題は、画面の左端にあるように、(ブレークポイントの後でも) 両方の行が tableView にまだ表示されていることです:/ 2 行目は消えているはずですが、消えていません。タッチ イベントに応答しなくなりましたが、削除する必要があります。

このような問題を経験したことがありますか? どんな助けでも大歓迎です。

- - アップデート - -

スレッドで何かをしなければならないのでしょうか?スレッドが変更されたときにテーブルが適切に更新されるように見えるため:/デバッグが難しいため、間違っている可能性があります

4

1 に答える 1

2

-tableView:numberOfRowsInSection がバックグラウンド スレッド (?) で呼び出されるため、メイン スレッドでテーブル ビューをリロードしていないようです。UIKit では、メイン スレッドで -reloadData を呼び出す必要があります。

于 2014-08-30T21:28:37.353 に答える