我有一个UISplitViewController嵌入在UINavigationController中,带有UINavigationItem按钮,可以纵向切换主视图的显示。我想在纵向首次加载纵向时显示详细视图上方的主视图。
我发现的任何类似示例都显示了纵向分割屏幕的主视图和详细视图,但是当UISplitViewController首次加载时,我需要将详细视图纵向全屏,主视图覆盖详细视图(就好像主视图已从左侧滑出)。有谁知道怎么做?
答案 0 :(得分:10)
修改:它不重复。在评论中发现的答案。解决方案是在UISplitViewController上使用preferredDisplayMode
并将其设置为UISplitViewControllerDisplayModePrimaryOverlay
将原始答案留给评论和后代。
原始答案
这与此重复:UISplitViewController in portrait on iPhone shows detail VC instead of master
作为参考,在这种情况下,解决方案是让实现UISplitViewControllerDelegate
的视图控制器使用以下代码:
- (BOOL)splitViewController:(UISplitViewController *)splitViewController
collapseSecondaryViewController:(UIViewController *)secondaryViewController
ontoPrimaryViewController:(UIViewController *)primaryViewController {
if ([secondaryViewController isKindOfClass:[UINavigationController class]]
&& [[(UINavigationController *)secondaryViewController topViewController] isKindOfClass:[DetailViewController class]]
&& ([(DetailViewController *)[(UINavigationController *)secondaryViewController topViewController] detailItem] == nil)) {
// Return YES to indicate that we have handled the collapse by doing nothing; the secondary controller will be discarded.
return YES;
} else {
return NO;
}
}
答案 1 :(得分:1)
或者您也可以使用:
$years= [];
foreach($yourArray as $key => $val)
{
$years[] = $key;
}
echo implode(',',$years);