아래 코드를 사용하여 addChildViewController
으로보기를 추가하고 있습니다.addChildViewController를 사용할 때 dealloc이 호출되지 않습니다.
VideoListVC * videoListVC = [[VideoListVC alloc] initWithNibName:@"VideoListVC" bundle:nil];
UINavigationController * navController = [[UINavigationController alloc] initWithRootViewController:videoListVC];
navController.view.frame = self.view_Container.bounds;
videoListVC.view.frame = navController.view.bounds;
[self addChildViewController:navController];
[navController didMoveToParentViewController:self]
[self.view_Container addSubview:navController.view];
self is MenuVC
가있는 여러 개의 ViewControllers
childview
로 추가. 나는 MenuVC
을 pushViewController
이라고 부르므로 MenuVC
에있을 때 VideoListVC
을 자식보기로 볼 수 있습니다. 내가 popViewControllerAnimated
을 호출했을 때 메서드가 MenuVC
뿐만 아니라 VideoListVC
도 호출되지 않았습니다. 따라서 문제는 ViewController
메모리가 해제되지 않고 앱 메모리가 계속해서 증가합니다. 마지막으로 앱을 중단 할 때 앱이 계속 충돌합니다. 20 to 25 min
.
해결 방법은 무엇입니까 ?? 나는 removeFromParentViewController
을 시도했지만 어떤 성공도 얻지 못했습니다.
addChildViewController
에 내 코드가 잘못 되었나요?
마지막 주석을 잊어 버리십시오 : WTH is this ?: 'UINavigationController * navController = [[UINavigationController alloc] videoListVC];'? UINavigationController가이 메서드에 응답한다고 생각하지 않습니다. – Abizern
@Abizern 예. 그건 내 실수 였어. 이제 이것을 보아라. 어떤 생각? – Hitarth
(탐색 컨트롤을 하위보기 컨트롤러로 추가하는 대신 전체 화면을 차지하므로) 모달로 표시합니다. 'presentViewController : animated : completion :'로 제시하고'dismissViewControllerAnimated : completion :' – Abizern