거기에 내 싱글 톤과 UIViewController에 문제가 있습니다. pushViewController:animated:
통해 애플리케이션의 다른 부분에 의해 사용UIViewController가 dealloc을 호출하지 않거나 두 번 호출하지 않습니다.
Singleton.h
@property (nonatomic, retain) UIViewController *viewController;
Singleton.m
...
@synthesize viewController = _viewController;
- (void)load {
self.viewController = [[[UIViewController alloc] initWithNibName:@"NibName" bundle: nil] autorelease];
}
- (void)unload {
[_viewController release];
}
이 viewController
. 하지만 때로는 싱글 톤 클래스 - (void)unload
메서드를 호출하여 viewController
을 릴리스해야합니다. pushViewController:animated:
viewController
을 절대로 호출하지 않으면 모든 것이 잘되고 dealloc이 호출되지만 pushViewController (및 viewController가 viewDidLoad를 수행하는 경우) dealloc이 작동하지 않습니다. 내가 self.viewController = nil;
두 번 호출 dealloc 같은 일을한다면 ... 내가 뭘 잘못하고 있니 ???
구조 - rootViewController --UINavigationController ---- UIViewController에 ------'viewController' -'과 pushViewController : 애니메이션 :' 나는 rootViewController를 해제하기 위해 노력하고있어 - 모든보기가를 릴리스 된'viewController'에만 문제가 있습니다. rootViewController를 릴리스하기 전에 - (void) unload를 호출합니다. –