說明「引用計數錯誤減量」:分析儀警告:對的UITabBarController
比方說,我有一個包含UITabBarController
和一堆控制器的一類。
現在,其中一個控制器(特殊控制器)不允許被UITabBarController
選中。我告訴他在不同的方式(但我還是希望有他在UITabBarController
的viewControllers
)
通過禁止specialController被選中,我很想念init
通過UITabBarController
完成。這就是爲什麼我親自撥打init
。
問題:
當我運行「生成和Analyzie」,我收到警告
的對象,在這一點由 不擁有的引用計數錯誤減量來電
符合我的init
。但是,該應用程序的工作。我錯過了什麼?
代碼:
在ClassA.m//called in viewDidLoad
- (void)makeVoodooOnViewControllers {
//set all variables etc.
for (int i = 0; i<controllersCount; i++) {
UIViewController *tabViewController = [tabBarController.viewControllers
objectAtIndex:i];
//CUT - some irrelevant code
if ([tabViewController isKindOfClass:[specialController class]]) {
//line below throws a warning
specialControllerProperty = [((specialController *)tabViewController) init];
}
}
如果我不清楚,請讓我知道:)。謝謝!
您使用'retain'來增加引用計數,而不是'init' – ughoavgfhw 2011-04-08 03:02:54
咦?我不想增加引用計數,我想'init'控制器。請檢查我的描述:) – Solo 2011-04-08 03:15:54