많은 iPhone 코드 샘플 (Apple 등)은 다음과 같은 코드를 포함합니다.목표 C : ui 객체를 만든 직후에 왜 릴리즈해야 하는가?
- (void)viewDidLoad {
CGRect applicationFrame = [[UIScreen mainScreen] applicationFrame];
// add the top-most parent view
UIView *contentView = [[UIView alloc] initWithFrame:applicationFrame];
contentView.backgroundColor = [UIColor blackColor];
self.view = contentView;
[contentView release];
levelView = [[LevelView alloc] initWithFrame:applicationFrame viewController:self];
[self.view addSubview:levelView];
calibrationView = [[CalibrationView alloc] initWithFrame:applicationFrame viewController:self];
}
이 스 니펫은 BubbleLevel 샘플 프로젝트에서 가져온 것입니다.
내 질문 : 왜 release 메시지가 contentView로 전송됩니까? self.view에서 contentView에 대한 참조가 유지되며이 메소드뿐만 아니라 앱의 수명 동안 분명히 사용하고 싶습니다. 호출 해제로 뷰가 해제되지 않습니까?
설명해 주셔서 감사합니다. –