나는 이 뷰 컨트롤러 언로드/다시로드를 구현하는 방법을 궁금하고 iOS를 처음 사용합니다.보기 컨트롤러를 언로드/다시로드하는 올바른 방법
지금 내 앱에는 루트보기 컨트롤러로 설정된 MainMenuViewController (사용자 정의보기 컨트롤러)가있는 NavigationController가 있습니다. 앱 수명 기간 동안 새로운 ViewController가 탐색 컨트롤러에 푸시/팝됩니다. 이 작업은 정상적으로 작동하며, 적절한 ViewController는 처음 스택에 푸시 될 때 (NIB에서) 시작됩니다.
그러나 이제는 특정 ViewController가 팝되면 언로드하고 다시 푸시 될 때 자동으로 다시로드하려고합니다.
해당 ViewControllers viewDidDisappear:
에 [self release]
을 추가했으며 언로드했지만 뷰를 다시 밀어 넣을 때 dealloc'ed 인스턴스 오류 및 충돌로 메시지가 전송됩니다. 따라서 내 질문은 다음과 같습니다.
- 팝업 된 ViewController를 언로드하는 적절한 방법입니까?
- 주어진 ViewController가로드되었는지 확인하는 방법은 무엇입니까?
- 강제로 다시로드하는 방법은 무엇입니까?
loadWithNib:
을 사용하여 탐색 스택에 밀어 넣으시겠습니까?
감사합니다,
피터 아이폰 OS 프로그래밍
답변에 대한 감사의,하지만 당신은 주어진 한 예는 제 경우 너무 기본입니다 - 나는 그것이 튀어 때 가끔, 심지어 내가 그것을 할 때 (할당 해제 할 viewcontrollers하고 결정하려면 사용자의 상태가 저장되면 상태가 저장되므로 사용자가 다시 돌아올 때까지는 너무 오르지 않게됩니다.) 지금 당장이 작업을하고 MainView 컨트롤러를 알림 센터의 관찰자로 설정하고 다른보기 컨트롤러는 dealloc'ed 또는 스택에서 갑자기 꺼내기를 원한다면 알림을 게시합니다. –
나는 당신이 무엇을하려하는지 정말로 모르지만 나는 여전히 문서를 읽고 이해하는 것이 좋습니다. 필요에 따라 간단하게 시작하고 복잡성을 추가하면 모든 것이 효과적입니다. 행운을 빌어 요. – XJones