0

UISplitViewControllerDelegate는 정말 이상한 동작을 보여줍니다. 일부 대리자 메서드는 호출되지 않지만 다른 메서드는 호출됩니다.UISplitViewController : 일부 대리자 메서드가 실행되지 않음

다음 메서드가 호출되면 대리자가 올바르게 설정됩니다.

- (BOOL)splitViewController:(UISplitViewController *)svc shouldHideViewController:(UIViewController *)vc inOrientation:(UIInterfaceOrientation)orientation 

다음 메소드는 호출되지 않습니다.

- (void)splitViewController:(UISplitViewController *)splitController willHideViewController:(UIViewController *)viewController withBarButtonItem:(UIBarButtonItem *)barButtonItem forPopoverController:(UIPopoverController *)popoverController 
- (void)splitViewController:(UISplitViewController *)splitController willShowViewController:(UIViewController *)viewController invalidatingBarButtonItem:(UIBarButtonItem *)barButtonItem 

감사합니다.

+0

첫 번째 방법이 '예'입니까? – nhgrif

+0

정확히, YES를 반환합니다. – burki

답변

0

몇 가지 다른 튜토리얼을 수행 한 후에도 동일한 문제가 발생했습니다. 그것은 splitViewController.delegate를 한 곳에서 적절하게 설정했지만 결국 어딘가 다른 곳에서 제거하는 것을 잊었습니다. 그래서 위임자는 ShouldHideViewController 메서드가 실행되기에 충분히 길게 설정되었지만 willHideViewController 또는 willShowViewController 메서드가 실행되기 전에 다른 (잘못된) 대리자로 설정되었습니다.

관련 문제