gpt4 book ai didi

xcode - 如何在 Xcode Interface Builder 中使用操作调用

转载 作者:行者123 更新时间:2023-12-03 18:07:31 26 4
gpt4 key购买 nike

使用参数绑定(bind)时,我无法使 IB 操作调用正常工作。有人可以解释一下这是如何工作的吗?如果我不使用 Argument 绑定(bind),则绑定(bind)有效,但使用 nil 参数调用该方法。我假设参数绑定(bind)旨在设置将在方法调用中传递的参数。就我而言,我想获取对 Table Cell Views 对象的引用。我收到如下编译器错误:

Exception while running ibtool: *** -[__NSArrayM insertObject:atIndex:]: object cannot be nil

我将操作调用绑定(bind)到表单元格 View 中的按钮。

enter image description here

最佳答案

解决方法:

在报表队 ListView Controller 类中:

  • 将协议(protocol) NSTableViewDelegate 添加到声明中。您不必实现任何方法。
  • 为数组 Controller 和表格 View 添加 socket 。
  • 添加操作方法
@IBAction func cancelAction(_ sender: NSButton) {
let row = tableView.row(for: sender)
if let objects = arrayController.arrangedObjects as? [String] {
let object = objects[row]
cancel(object)
}
}

在IB中:

  • 连接 socket 。
  • 将 TableView 的委托(delegate)连接到报表队 ListView Controller 。
  • 将按钮的操作连接到报表队 ListView Controller 的 cancelAction
  • 删除按钮操作绑定(bind)。

关于xcode - 如何在 Xcode Interface Builder 中使用操作调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61542067/

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