UIView
컨트롤러를 릴리스하는 데 문제가 있습니다. 이것이 제 코드입니다. 이 일어나고목표 c - UIVIewController를 해제하는 올바른 방법
viewT = [[PersonalViewController alloc] initWithNibName:@"PersonalViewController" bundle:[NSBundle mainBundle]];
//In this moment the retainCount is 1
[[AppDelegate appDelegate].window insertSubview:viewT.view aboveSubview:[AppDelegate appDelegate].dockController.view];
[viewT release];
//Now the retain count is 3!
//... After some code, when the user press another button, I want to release the view
[viewT.view removeFromSuperview];
//After this line, the object stills there, with a retain of 2.
그래서 뭔가를 내가 이해가 안 : 나는 버튼을 누르면 , 나는 모든 것을 앞에 화면에보기를 넣습니다. 나는 기억에 관한 가이드를 읽고 있었고, 나는 전에 이런 의심을 품지 못했다. 내가 뭘 잘못하고 있니? viewT
을 어떻게 완전하게 풀 수 있습니까 ???
autorelease로 시도해 보셨습니까? – Maffo
고맙습니다. 해결책 일 수 있지만, 내가 superview에서 제거 할 때까지보기가 해제되지 않을 것이라고 확신 할 수 있습니까? –
그래서 'retainCount'를 사용하지 않아야합니다. 귀하의 코드는 괜찮습니다; 당신이 만든 물건을 놓았습니다. 그것이 중요합니다. – Abizern