【问题标题】:Split view in portrait mode!在纵向模式下拆分视图!
【发布时间】:2011-01-25 07:02:35
【问题描述】:

Apple 仅为横向模式提供拆分视图,而不为纵向模式提供。有没有办法在纵向模式下实现拆分视图?

[splitViewController setHidesMasterViewInPortrait:NO];

这会奏效。但是这个 API 没有记录(私有)。

谢谢,
曼朱纳特

【问题讨论】:

    标签: ipad


    【解决方案1】:

    对于 iOS5+,

    转到您的detailViewController。你的detailViewController 应该有UISplitViewControllerDelegate。只需将此代码放入:

    - (BOOL)splitViewController:(UISplitViewController *)svc shouldHideViewController:(UIViewController *)vc inOrientation:(UIInterfaceOrientation)orientation{
        return NO;
    }
    

    这样就可以了。它是公共 API。

    【讨论】:

    • 这在 iOS 8 中已被弃用。
    【解决方案2】:

    我在这里的一点贡献。

    字节的答案在 iOS 7 之前是正确的。从 iOS 8 开始,您应该使用 preferredDisplayMode

    例如,要以纵向模式显示两个视图控制器,请执行以下操作:

    self.splitViewController.preferredDisplayMode = UISplitViewControllerDisplayModeAllVisible;
    

    希望这会有所帮助!

    【讨论】:

    • 我继承了 UISplitViewController 并将其附加到情节提要中的 splitview 和 viewdidload 中放置 self.preferredDisplayMode = UISplitViewControllerDisplayModeAllVisible;
    【解决方案3】:

    在 iOS 8 xcode 6+ 中更新

    if let splitVCExists = self.splitViewController{
            splitVCExists.preferredDisplayMode = UISplitViewControllerDisplayMode.AllVisible
        }    
    

    文档: https://developer.apple.com/library/ios/documentation/UIKit/Reference/UISplitViewController_class/index.html#//apple_ref/occ/instp/UISplitViewController/preferredDisplayMode

    我确实注意到的一件事是,只要有足够的空间,它就会尝试基于preferredDisplayMode 布局splitviewcontroller。否则它将选择适合内容的显示模式。我用过它,它让 VC 在纵向和横向上都呈现出我想要的样子。

    【讨论】:

      【解决方案4】:

      看看这个MGSplitViewController

      它是一个定制的拆分视图控制器,具有各种有用的增强功能。当然,您可以纵向显示主视图。

      【讨论】:

        【解决方案5】:

        【讨论】:

        • 链接不再有效。我很想看看。
        【解决方案6】:

        以前我试图实现类似的目标。在尝试了 Matt 的代码并尝试创建类别失败后,我意识到这样做的唯一方法(以 Apple 不会拒绝您的应用程序的方式)是使用两个自定义视图。参考this问题。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-12-11
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多