gpt4 book ai didi

macos - 关闭 nspopover 不起作用

转载 作者:行者123 更新时间:2023-12-03 17:37:52 26 4
gpt4 key购买 nike

我有一个大问题,一周以来我都无法解决。我的情况:

我有一个带有 NSTableview 和自定义单元格的 ViewController。每个销售都有一个 nsbutton。如果您按下按钮,则会出现 nspopover。但您可以使用“关闭”按钮关闭它,该按钮被分配给解雇功能。如果您按下加号按钮(在桌面 View 之外),则会出现相同的弹出窗口,并且可以使用“关闭”按钮关闭,没有任何问题。

我做错了什么?我通过谷歌驱动器附加了示例项目。感谢您的帮助:

下载:https://drive.google.com/open?id=0B8PBtMQt9GdORUxQRXRISWR5dWs

最佳答案

如果 View Controller 没有呈现 View Controller ,则

dismissViewController 不起作用(我不知道为什么)。从下载的项目开始,进行以下更改:

  1. showPopover 操作从 CustomCell 移至 TableViewController。将 sender 类型更改为 NSButton

  2. 显示 View Controller 而不是显示弹出框。

    @IBAction func showPopover(_ sender: NSButton) {
    let vcPopover = NSStoryboard(name: "Main", bundle: nil).instantiateController(withIdentifier: "vcPopover") as! NSViewController
    self.presentViewController(vcPopover, asPopoverRelativeTo : sender.bounds, of : sender, preferredEdge: .maxX, behavior: .transient)
    }
  3. 将 TableView 中的按钮操作连接到 TableView Controller 和操作 showPopover

关于macos - 关闭 nspopover 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44873021/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com