일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- Number
- 애플
- screen
- install
- Objective-C
- mac
- 윈도우즈7
- 형식
- 설치
- VISTA
- 링크
- WebService
- 아이맥
- iPhone
- cagr48com
- ObjectiveC
- Mobile
- 7932
- 오브젝티브C
- WSDL
- 윈도구
- 아이폰
- c#
- 퇴사
- windows
- 맥
- windows7
- java
- 윈도구7
- 볼링
- Today
- Total
A colossal Dreamer: GR鐵塔-天生我材
UIViewController - presentedViewController vs presentingViewController 본문
오랜만에 사과농장에서 준 SDK 수준의 코드를 작성하다가..
보임조절기(UIViewController)에 달린 속성 두 개를 거꾸로 이해해서,
보임조절기 내부가 엉키게 만들고 말았다. (ㅠㅠ)
다음부터 정확히 사용하도록 하자.
보임조절기 속성
- presentedViewController: 내가 보여주는 아들
- presentingViewController: 나를 보여주는 아빠 또는 엄마
짜투리: 보임조절기 자손 찾기 코드
1. 아들 있으면, 아들을 찾아가고, 다시!
2. 아들 없으면, 탭인지 확인해서 선택된 아들을 찾아가고, 다시!
3. 아들 없고, 탭도 아니면, 네비인지 확인해서 네비의 막내아들 찾고, 다시!
4. 아들 없고, 탭도 아니고, 네비도 아니면, 지금 놈이 최종 자손 보임조절기!
func lookUpTopPresentedViewController(root topPresentedViewControllerOrNil: UIViewController?) -> UIViewController? {
if let presentedViewController = topPresentedViewControllerOrNil?.presentedViewController {
return lookUpTopPresentedViewController(root: presentedViewController)
}
if let tabbarController = topPresentedViewControllerOrNil as? UITabBarController {
return lookUpTopPresentedViewController(root: tabbarController.selectedViewController)
if let navigationController = topPresentedViewControllerOrNil as? UINavigationController {
return lookUpTopPresentedViewController(root: navigationController.topViewController)
}
return topPresentedViewControllerOrNil
}
'낙농일기' 카테고리의 다른 글
달구지 공간 반남, 1달 사라지기 신청 (0) | 2018.04.10 |
---|---|
선진문물 공동작업(WWDC LAB) 참여 지원 좀 해주세요. (0) | 2018.04.05 |
드래그(Pan, drag) 동작에서 관성유지에 대한 수학적 접근 (0) | 2018.02.21 |
QA과정(SDK->앱->빌드->QA->기획) 사과 농사꾼에게 일이 몰리다. (0) | 2018.01.25 |
새로운 신형 농기계를 수령하다. (2) | 2018.01.09 |