2013-08-12 2 views
0

오류 인 경우 내 탐색 스택에서 모든 뷰를 팝업하려고합니다. 오류 코드는 NSObject 클래스에 있으므로 navigationcontroller에 액세스 할 수 없습니다. 이것은 내가 시도한 코드입니다.NSObject 클래스에서 popToRootViewControllerAnimated 오류가 발생했습니다.

[self.navigationController popToRootViewControllerAnimated:FALSE]; 

NSobject 클래스에서 스택의 뷰를 액세스하고 팝하는 가장 좋은 방법을 알고 싶습니다.

모든 도움을 주시면 대단히 감사하겠습니다.

+0

언 와인드 세구 (unwind segue)를 사용해 보셨습니까? – CaptJak

+0

아니오 havent, 나는 이것에 대해서 들어 본 적도 없다. lol, 당신이 알아야 할 것 중 하나는이 에러가 발생했을 때 몇 가지 다른 뷰 중 하나에있을 수 있고, 루트 뷰 컨트롤러로 돌아갈 필요가 있다는 것이다. 그 점. – HurkNburkS

+0

이것이 작동할지는 모르지만 NSObject의 NSNotification을 navigationController에 대한 액세스 권한이있는 클래스로 보낼 수 있습니다. –

답변

0

그래서 언 와인드 세구가 필요합니다. 간단한 도구, 매우 유용하고 구현하기 쉽습니다. 이 segue는 당신이 당신의 계층에 얼마나 깊든간에 성공적으로 ViewController로 되돌아 갈 것입니다.

이 방법을 구현하는 가장 좋은 방법은 in this answer이고, 또한 in this answer (선호)이라고 생각합니다.

그래야 효과가 있습니다.

+0

오케이 완벽하게 고맙습니다 .. 내가 그 exit 버튼을 볼 수 없기 때문에 xcode를 업데이트 한 후에 해보려고합니다. – HurkNburkS

+0

스토리 보드를 사용하지 않아서 이것이 효과가 있을지 확실하지 않습니다. – HurkNburkS

+0

@HurkNburkS Bah! 협잡! 내가 확인 했어야 ... 당신이 할 수있는'popToRootViewControllerAnimated' 메서드로 최신 VC에서 사용자 지정 메서드를 만든 다음 [이 답변] (http://stackoverflow.com/a/)를 사용하여 다른 클래스에서 호출하는 것입니다 9731162/2535467). – CaptJak

관련 문제