app이 새로운 ViewController를로드 할 때마다 (다른보기로 전환) 함수를 실행하려고합니다. 이 함수를 각 ViewController 내부에서 호출하지 않으려면 (약 10 개가 더 추가되어야 함) AppDelegate에서 일종의 관찰자를 추가하여이 작업을 수행하고 싶습니다. 이것이 가능한가? 아니면 어떻게 든 UIViewController 확장의 도움으로 할 수 있습니까?AppViewController에서 AppDelegate로 변경 감지
-1
A
답변
0
또는 당신은 당신이 이벤트에 UINavigationController가 및 사후 알림을 하위 클래스에 관심이 :
NotificationCenter.default.addObserver(forName: Notification.Name(rawValue: "NavigationControllerWillPush"), object: nil, queue: OperationQueue.main) {
notification in
// handle push
}
NotificationCenter.default.addObserver(forName: Notification.Name(rawValue: "NavigationControllerWillPop"), object: nil, queue: OperationQueue.main) {
notification in
// handle pop
}
1
AppDelegate, 옵저버 또는 확장 프로그램을 잊어 버린 경우 Inheritance을 사용하십시오.
모든 UIViewController는 MainViewController 기본 클래스를 확장해야하며 논리를 기본 클래스의 viewDidLoad 메서드 (또는 viewDidAppear)에 배치 할 수 있습니다.
재정의 할 때 수퍼 클래스 메서드를 호출해야합니다.
관련 문제
- 1. RootviewController에서 AppDelegate로 함수 호출
- 2. AppDelegate로 데이터 전달
- 3. UIViewController에서 AppDelegate로 데이터 전달
- 4. AppDelegate로 컨트롤 드래그 전용
- 5. UIViewController에서 Appdelegate로 이동
- 6. 프로그래밍 방식으로 tabBarController를 appdelegate로 작성하십시오.
- 7. 보기 컨트롤러에서 AppDelegate로 NSMutableString 개체를 전달해야합니다.
- 8. 이미지 변경 이벤트 감지
- 9. 인벤토리 변경 감지
- 10. jquery 양식 변경 감지
- 11. navigator.online에서 변경 감지
- 12. 피치 감지 및 변경
- 13. C# 디렉터리 변경 감지
- 14. HWND 가시성 변경 감지
- 15. NSColorPanel에서 색상 변경 감지
- 16. 텍스트 변경 감지
- 17. 텍스트 변경 jquery 감지
- 18. 감지 필드 변경 - CakePHP의
- 19. phonegap : 볼륨 변경 감지
- 20. 감지 파일 변경 2012
- 21. JAVA 폼 감지 변경
- 22. PHP에서 배열 변경 감지
- 23. 비디오 프레임에서 감지 변경
- 24. 데이터베이스 변경 감지
- 25. 레지스트리 변경 감지
- 26. 스트리밍 데이터의 변경 감지
- 27. TFS에서 파일 변경 감지
- 28. linq의 배열 변경 감지
- 29. iframe에서 방향 변경 감지
- 30. 변경 사항의 체크섬 감지
합니까 내가해야 할 것입니다 의미 :
이그런 다음 응용 프로그램 위임에 당신이 그 통지를 관찰 할 수있다 각 ViewController 하위 클래스? – Vege
예. 중복 된 코드를 피하고보다 확장 성있는 프로그램을 작성하려면 코드 집중화가 올바른 방법입니다. – lubilis