나는보기 기반 응용 프로그램을 가지고 있고 dealloc 메서드가 작동하는지 확인하면 그게 보이지 않는다 ... 디버그 및 디버그, 그리고 retainCount를 사용하여, 내 viewcontroller retaincount가 프로그램 시작에 미친 것을 발견했습니다. 쉽게 재현 ....보기 기반 응용 프로그램 - viewcontroller retainCount after [window addSubview : viewController.view];
는 새로운 뷰 기반의 애플리케이션 템플릿을 시작하고 didFinishLaunchingWithOptions에서 : 내가 콘솔에있어
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after app launch.
NSLog(@"i1 %i",[viewController retainCount]);
[window addSubview:viewController.view];
NSLog(@"i2 %i",[viewController retainCount]);
[window makeKeyAndVisible];
return YES;
}
:이 권한은
[Session started at 2010-08-07 09:57:34 -0300.]
2010-08-07 09:57:35.132 teste1[20367:207] i1 2
2010-08-07 09:57:35.138 teste1[20367:207] i2 8
입니까?
내가 애플 리케이션을 닫으려면 아이폰 홈 버튼을 누르면, dealloc 메소 nevers 호출, 난 믿기 때문에 viewController의 retainCount .... 맞아?
이것은 사과의보기 응용 프로그램 템플릿입니다 ... 작동해야합니까 ... 그렇지 않습니다?
누군가가 초기 보유 수 2 인 이유를 설명해 주실 수 있습니까? 그리고 다른 8? xib 파일이 비어 있습니다. ...
alloc 후 초기 보유 수는 1입니다. 할당 직후가 아니라 프레임 워크가 몇 가지 작업을 수행 할 수있는 시간이 지난 후 기록합니다. 다시 말하지만,이 기술을 사용하여 메모리 관리 실수를 발견 할 가능성이 적기 때문에 유지 카운트에 대해 걱정할 필요가 없습니다. 단지 규칙을 따르고 정상이어야합니다. – Pablo