iPad와 같은 분할보기 컨트롤러를 처리하는 6 Plus 이외의 iPhone에서 분할보기 컨트롤러를 처리하는 방법이 혼란합니다. 디테일 뷰 컨트롤러가 그 아이폰에 나타나는 루트보기 컨트롤러가되기를 원합니다.iPhone의 UISplitViewController에 대한 상세보기 컨트롤러
편집 나는이 두 대리자 메서드를 추가하여 원하는 동작을 얻을 수있었습니다. 이제 분할보기 컨트롤러가 iPhone의 마스터보기 컨트롤러 대신 상세보기 컨트롤러로 축소됩니다.
- (UIViewController *)primaryViewControllerForCollapsingSplitViewController:(UISplitViewController *)splitViewController
{
return self.detailNavigationController;
}
- (BOOL)splitViewController:(UISplitViewController *)splitViewController collapseSecondaryViewController:(UIViewController *)secondaryViewController ontoPrimaryViewController:(UIViewController *)primaryViewController
{
return YES;
}
내가 아이폰에 대한 상세 뷰 컨트롤러의 네비게이션 컨트롤러에 내 마스터 뷰 컨트롤러를 누르면 내가 콘솔에서 지금이 메시지를 받고 있어요 1
문제. 그것은 잘 작동 그래서 나는 왜이 메시지를 받고 이해가 안 돼요.
Unbalanced calls to begin/end appearance transitions for <MasterTableViewController: 0x7fc8d2b67220>.
문제는 2
나는 분할 뷰 컨트롤러가 아이폰에 붕괴 때를 감지 할 수있는 좋은 방법에 명확하지 않다. 이 변경 감지하려면 UIViewControllerShowDetailTargetDidChangeNotification
알림을 사용하고 있지만이 변경 일종의 대리 메서드가 있어야 같은 느낌.
답변에서보세요 http://stackoverflow.com/questions/25875618/uisplitviewcontroller-in-portrait-on-iphone-shows -detail-vc-master 대신 도움이 될 수도 있습니다. –