2009-07-26 5 views
38

첫 번째 iPhone 응용 프로그램을 작성 중이며보기를 전환하는 데 문제가 있습니다. 나는 AppDelegate (각각 UIApplicationDelegate의 인스턴스)에 2 개의 뷰와 참조를 가지고 있습니다. applicationDidFinishLaunching에서 두 인스턴스를 만들고 첫 번째보기를 즉시 보여줍니다. 이것은 잘 작동합니다.UIApplication 대리자에 대한 참조 얻기

다른보기로의 참조는 AppDelegate이고 나는 다른보기로 전환 할 수 있도록 참조 방법을 알아낼 수 없습니다. 메인 UIApplication 또는 UIApplicationDelegate 개체에 대한 참조를 얻을 수있는 방법이 있습니까?

답변

102

예, UIApplication은 싱글이며, 오브젝티브 C에 대한 일반 싱글 톤 패턴을 사용

[UIApplication sharedApplication]; 

당신은 그것에서 직접 위임 클래스를 얻을 수 있습니다 :

MyAppDelegate *delegate = (MyAppDelegate *)[[UIApplication sharedApplication] delegate]; 
+1

MyApplicationDelegate가 프로토콜 ** UI를 준수하는 클래스의 이름이라는 점은 분명하지만 가치가있을 수 있습니다. ApplicationDelegate **, 많은 경우 ** AppDelegate ** – Mehdi

16

사용 :

[[UIApplication sharedApplication] delegate]; 
관련 문제