2010-12-02 121 views
3

我有这种方法,分析仪告诉我有可能泄漏的itemsArray可变数组。在方法结尾添加了相应的release,但分析仪结果仍然存在。潜在的泄漏分析仪结果不会消失

- (void)addCategory:(NSString*)category { 
    NSMutableArray *itemsArray = [[NSMutableArray alloc] initWithCapacity:1]; 

    if (category) { 
     [[APP_DELEGATE itemsDictionary] setObject:itemsArray forKey:category]; 
    } 

    [self dismissModalViewControllerAnimated:YES]; 
    [itemsArray release]; 
} 

我该如何解决这个问题?

感谢。

回答

0

为什么不尝试在[self dismissModalViewControllerAnimated:YES]之前放置[itemsArray release];

1

此代码不会产生任何问题与分析:

static NSMutableDictionary *itemsDictionary; 

- (void)addCategory:(NSString*)category { 
    NSMutableArray *itemsArray = [[NSMutableArray alloc] initWithCapacity:1]; 

    if (category) { 
     [itemsDictionary setObject:itemsArray forKey:category]; 
    } 

    [self dismissModalViewControllerAnimated:YES]; 
    [itemsArray release]; 
} 

你能后的确切措辞(或者截图),你看到的警告?