UINavigationController
과 UINavigationControllerDelegate
을 상속받은 클래스가 있습니다.UINavigationController 파생 개체에 대한 이니셜 라이저를 만드는 방법은 무엇입니까?
내가 viewDidLoad()
의 대리자를 설정 해요 : (예 : willShow
, didShow
로) 것들로 불리는되지 않아요 위임 방법은 스택에 밀어 그러나
self.navigationController?.delegate = self
.
따라서 지난 질문을 읽은 다음 이니셜 라이저에 viewDidLoad
보다 이전에 대리인을 설정하려고합니다. 백만 가지 조합을 시도했지만 컴파일되지 않거나 호출되지 않습니다.
는 컴파일되지 않습니다 :
convenience init()
{
init(rootViewController: self)
self.navigationController?.delegate = self
}
라는받지 않습니다
convenience init()
{
self.init()
self.navigationController?.delegate = self
}
을 등등 등등, 일을 시도 기반 :
convenience init()
{
super.init()
self.navigationController?.delegate = self
}
컴파일하지 않음 컴파일러가 말하는 것은 문제입니다. 그러나 컴파일러에서는 "self
을 호출하여 추가하십시오."라고 말하면 추가하기 때문에 "호출에서 self
을 제거하십시오"라는 식으로 계속됩니다. 나는 수백만 가지 조합을 시도해 보았고 과거의 질문을 검색하고 이니셜 라이저를 복사/붙여 넣기를 시도했습니다. 나는 아직도 일하는 것을 얻을 수 없다.