【问题标题】:Swift storyboards: split view controller not showing properly on MacOSSwift 故事板:拆分视图控制器在 MacOS 上未正确显示
【发布时间】:2014-11-02 23:05:02
【问题描述】:

我正在尝试在 MacOS 上使用故事板和 swift 实现拆分视图控制器:

由于某种原因,只有右侧出现。有什么想法吗?

【问题讨论】:

    标签: swift xcode macos xcode-storyboard


    【解决方案1】:

    这实际上是一个窗口大小问题。由于它是未定义的,它会将左侧推到视野之外。只需将光标放在左侧并拖动即可显示左侧视图。

    希望对你有帮助。


    更新:

    实际上不是窗口大小问题。看起来 split view controller 默认将一侧推到视野之外。相反,我能够使用插入视图控制器的拆分视图组件正确查看两个窗格。

    我将在最新的 WWDC 中查看有关此问题的信息:

    https://developer.apple.com/videos/wwdc/2014/?id=212

    https://developer.apple.com/videos/wwdc/2014/?id=214


    2014 年 3 月 11 日更新:

    在第一个截屏视频的 07:00 分钟后,我知道发生了什么。看看下面的截图:

    1. 使 Split View Controller 与主窗口一样宽。
    2. 调整拆分视图项目的大小。
    3. 点击最右边的项目Split View Item,在Pin弹出菜单中添加Missing Constraints em>。

    您可能需要几次尝试才能做到正确。我测试了 3 次,它确实有效。

    【讨论】:

    • 我如何定义它以使其停止这样做?
    • 缺少约束不可点击。我有同样的问题
    【解决方案2】:

    https://developer.apple.com/library/mac/documentation/Cocoa/Reference/ApplicationKit/ObjC_classic/index.html#//apple_ref/doc/uid/20001093

    NSSplitViewDelegate

    类SplitViewController: NSSplitViewController{//,NSSplitViewDelegate

    Swift storyboards: split view controller not showing properly

    这对我来说也确实是个问题。现在我在我的代码中解决了这个问题。

    1.创建一个类扩展的NSSplitViewController。 2.将在第 1 阶段创建的类设置为您在 StoryBord 上创建的 SplitView 上的自定义类。 3.在viewDidLoad()中调用MySplitView.adjustSubviews()。

    import Cocoa
    
    class SplitViewController: NSSplitViewController{//,NSSplitViewDelegate
        @IBOutlet weak var MySplitView: NSSplitView!
            override func viewDidLoad() {
            super.viewDidLoad()
            MySplitView.adjustSubviews();
        }
        override func splitView(splitView: NSSplitView, constrainMinCoordinate proposedMinimumPosition: CGFloat, ofSubviewAt dividerIndex: Int) -> CGFloat {
            return proposedMinimumPosition + 200
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2016-11-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-19
      相关资源
      最近更新 更多