2011-06-22 4 views
0

私はTTTableSubtitItitItemを作成して配列に追加し、テーブルのデータソースを配列に設定してから配列を解放しますが、漏れはTTTableSubtitleItemのリークを示しています。あなたはMyDatasourceのを割り当てられ、それを解放しませんでしたthree20 TTTableSubtitleItemメモリリーク?

self.dataSource = [[[myDataSource alloc] initWithItems:ar] autorelease]; 

:へ

self.dataSource = [[myDataSource alloc] initWithItems:ar]; 

変更それ:

NSMutableArray *ar = [[NSMutableArray alloc] init]; 
while (item = (NSDictionary*)[enumerator nextObject]) { 
    NSString *result = [NSString stringWithFormat:@"tt://VideoListViewController/%@", 
         [item objectForKey:@"id"]]; 

    [ar addObject:[TTTableSubtitleItem itemWithText:[item objectForKey:@"name"] 
              subtitle:[item objectForKey:@"description"] 
               URL:result]]; 

} 
self.dataSource = [[myDataSource alloc] initWithItems:ar]; 
[ar release]; 

答えて

0

あなたのリークがです。また、あなたの.hファイルにあなたの 'dataSource'宣言を表示できますか?

+0

こんにちはNayefc、あなたが正しく指摘したとおり、それは正確な問題でした。見てくれてありがとう、ありがとう。ヘッダーファイルにdataSource宣言がありません。それを入れる必要はありますか?私はTTTableViewControllerを使用しています。コードでは、最初の参照であるself.datasourceと言います。 – user598241

+0

大丈夫です。あなたはそれを置く必要はありません。私はちょうど "self"を使ったので、あなたの.hファイルにそれがあると思っていました。 @propertyで "retain"を使用したときにリリースしたことを確認するように頼んだだけです。しかし、それについて心配しないでください - あなたは行くのが良いです。 – darksky

関連する問題