2010-04-14 4 views
0

모달보기 컨트롤러를 표시하려고합니다. 설명서를 읽었지만 뭔가 이상합니다. 여기 내 코드는 다음과 같습니다 보유 개수가있는 Presentmodalviewcontroller 메서드 문제

NSLog(@"rc: %d", [modalViewController retainCount]); 
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:modalViewController]; 
[self presentModalViewController:navigationController animated:YES]; 
[navigationController release]; 
NSLog(@"rc: %d", [modalViewController retainCount]); 

그리고 콘솔에

나타납니다 :

RC : 2
RC : 당신이 얇은을 무엇 24

내가 24이 아주 이상한 생각 ...? 왜 이런 일이 일어나는 걸까요?

+0

귀하의 특정 문제에 대해 잘 모르겠지만 [NSObject retainCount]는 NSUInteger를 반환하므로 형식 문자열에 % d가 아닌 % u를 사용해야합니다. –

+0

그래, % u (으)로 변경했습니다. 그것은 동일합니다. –

답변

2

보유 횟수가 너무 많아도 걱정할 필요가 없습니다. 이와 같은 시스템 호출을 사용할 때, 임의의 수의 유지/해제 사이클이 발생할 수 있습니다.

보기 컨트롤러가 모달로 올바르게 표시되는 경우 문제가 무엇입니까?

+0

ModalViewController를 닫은 후 메모리 누수가 발생하여 누수 위치를 찾을 수 없습니다. : –

+0

modalViewController가 어디에 생성 되었습니까? – Jasarien

+0

좋아, 찾았습니다. 다음과 같은 속성을 설정했습니다 : self.prop = [데이터 보유] 나는 지금 매우 화가났습니다 ... –

관련 문제