Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 关闭显示为图纸的NSViewController_Swift_Macos_Cocoa_Nsviewcontroller - Fatal编程技术网

Swift 关闭显示为图纸的NSViewController

Swift 关闭显示为图纸的NSViewController,swift,macos,cocoa,nsviewcontroller,Swift,Macos,Cocoa,Nsviewcontroller,让我从一开始就告诉你,我有这个初始视图控制器。从中我转到主视图控制器,通过从初始视图控制器显示主视图控制器,并在初始视图控制器上执行performClose,使其关闭 现在我在主视图控制器中,从这里我将视图控制器显示为图纸[a] 现在我在一个控制器中,从这里我将视图控制器显示为表[B] 现在我在B。现在我想从B视图控制器演示我的主视图控制器。我可以通过从情节提要中获取视图控制器并使用presentViewControlleramodalWindow显示它来轻松实现这一点。但问题是,在同一时间,我

让我从一开始就告诉你,我有这个初始视图控制器。从中我转到主视图控制器,通过从初始视图控制器显示主视图控制器,并在初始视图控制器上执行
performClose
,使其关闭

现在我在主视图控制器中,从这里我将视图控制器显示为图纸[a]

现在我在一个控制器中,从这里我将视图控制器显示为表[B]

现在我在B。现在我想从B视图控制器演示我的主视图控制器。我可以通过从情节提要中获取视图控制器并使用
presentViewControlleramodalWindow
显示它来轻松实现这一点。但问题是,在同一时间,我想关闭B,但我不能这样做

我试过这个B[下面给出的代码],它似乎不起作用,当我执行这个动作时,mac会发出叮当声

 if let window = self.view.window {
     window.performClose(self)
  }
我可以在B控制器中执行
dismissController(self)
,这不是重点。我不想忽略它,我只想完全关闭它并显示主页。或者还有其他工作吗?我想做的就是,通过关闭主视图控制器[B],从控制器B显示主视图控制器


我对OSX环境非常陌生,请帮我解决这个问题。提前谢谢。

我知道这是一个老问题,但无论如何。我遇到了完全相同的问题,我发现如下:

    if NSApplication.shared().keyWindow?.contentView != self.view {
        self.view.window?.endSheet((self.view.window?.attachedSheet)!)
    }