実際の記事を表す一連の画像があるニュースアプリを構築しています。それらのいずれかをタップすると、メインの記事ページが開き、下部に関連記事を含むスクロール ビューがあります。
上記の下部スクローラーに関する奇妙な(おそらくCoreData関連の)問題を見つけました。記事ページを開くと、関連する記事を取得し、一連の記事を割り当てて、articleViewControllers
それらのビューをスクロール ビューに追加します。記事ページから切り替えると、スクローラーからすべてのビューを削除し、articleViewControllers
. Instruments といくつかのヒープショット (記事をタップする前に 1 つ、メイン ページに戻るときにもう 1 つ) を使用すると、かなりの量のメモリが割り当てられたままになっていることがわかりました (画像を参照)。
オブジェクト以外のタブを表示すると、ほとんどの割り当てviewDidLoad
が上記のメソッドの次のコード行で行われていることがわかりarticleViewController
ます。
NSSet *tempSet = [[NSSet alloc] initWithSet:tempArticle.thumb];
//tempArticle.thumb is the actual problem here
[tempSet release]
tempArticle
Article
NSManagedObject のサブクラスであるクラスのインスタンスです。この 2 行のコードをコメント アウトすると、すべて正常に動作するので、CoreData の使用方法が間違っていることが原因だと推測しています。
どんな助けでも大歓迎です。ありがとう!