这是一个很好的解决方案,适用于iPhone和iPad上的iOS 8和iOS 7。您只需检测是否有拆分视图控制器,如果有,请检查它是否已折叠。若它被折叠,你们知道屏幕上只有一个视图控制器。知道了这些信息,你可以做任何你需要的事情。
//remove right bar button item if more than one view controller is on screen
if (self.splitViewController) {
if ([UISplitViewController instancesRespondToSelector:@selector(isCollapsed)]) {
if (!self.splitViewController.collapsed) {
self.navigationController.navigationBar.topItem.rightBarButtonItem = nil;
}
} else {
self.navigationController.navigationBar.topItem.rightBarButtonItem = nil;
}
}