マスタービューを横向きと縦向きの両方で表示する方法について多くの人が情報を求めているのを見つけましたが、私がやろうとしているのは、デバイスの向きに関係なく正しいマスタービューを非表示にして、ナビゲーションバーボタンを使用してサイド。
デバイスの向きが変わったときに、マスタービューを非表示にするロジックがどこにある/実行されるかを誰かが教えてくれれば、私を大いに助けてくれるでしょう。Xcode に付属のテンプレート、iOS のマスター/詳細ビューを見ていて、これら 2 つの次のメソッドが AppDelegate.m ファイルで宣言されていることに気付きましたが、それらがどこから実行されているかを見つけることができないようです:
//Called when a button should be added to the nav bar for a view that is hidden
- (void)splitViewController:(UISplitViewController *)splitController willHideViewController: (UIViewController *)viewController withBarButtonItem:(UIBarButtonItem *)barButtonItem forPopoverController:(UIPopoverController *)popoverController
{
barButtonItem.title = NSLocalizedString(@"Master", @"Master");
[self.navigationItem setLeftBarButtonItem:barButtonItem animated:YES];
self.masterPopoverController = popoverController;
}
- (void)splitViewController:(UISplitViewController *)splitController willShowViewController:(UIViewController *)viewController invalidatingBarButtonItem:(UIBarButtonItem *)barButtonItem
{
// Called when the view is shown again in the split view, invalidating the button and popover controller.
[self.navigationItem setLeftBarButtonItem:nil animated:YES];
self.masterPopoverController = nil;
}
すべての助けをいただければ幸いです。