2011-02-04 14 views
0

イメージとテキストデータを含む非常に長いテーブルを作成しています。私はresuable細胞を使用しています。 テーブルを下にスクロールすると、新しいイメージが読み込まれ、再開可能なセルに追加されるため、メモリ割り当てが増えています。UITableViewでセルを処理する方法は必要ありません。

私が知りたいのは、再生可能なセルが表示されていないときにそれらを廃棄する方法です。

助けてください!

+1

セルを自動リリースしていますか?私はあなたがそうするだろうと思う。 'cellForRowAtIndexPath:'コードを投稿してください。 – EmptyStack

答えて

0

このタスクはテーブルビュー自体で効率的に管理されるため、再利用可能なセルを削除する方法はありません。私によれば、しかし、私はいくつかのコードスニペットを確認する必要があります、あなたはイメージを適切に処分していない。

典型的なケースは、-(UIImage *)imageNamed:メソッドを使用してイメージをロードする場合です。この場合、すべてのイメージは手動のalloc/releaseほど効率的でないOS管理キャッシュに格納されます。

セルを作成して自動解放することを忘れた場合もあります。これは、tableView:cellForRowAtIndexPath:メソッドでは、新しいUITableViewCellをインスタンス化するときにメソッドを終了する前に自動解放しなければならないことを意味します(UITableView内部キューによって保持されます)。

関連する問題