gpt4 book ai didi

swift - 如何更改 NSPopUpButtonCell NSTableView Swift 4.2 中的 selectItem?

转载 作者:行者123 更新时间:2023-11-30 10:51:51 25 4
gpt4 key购买 nike

我想更改 NSTableView 中弹出按钮的索引。

func tableView(_ tableView: NSTableView, objectValueFor tableColumn: NSTableColumn?, row: Int) -> Any? {

let dataCell:NSPopUpButtonCell = tableColumn?.dataCell as! NSPopUpButtonCell
dataCell.addItems(withTitles: dataTypes)
return data.type //dataCell

}

func tableView(_ tableView: NSTableView, setObjectValue object: Any?, for tableColumn: NSTableColumn?, row: Int) {

dataSourceArr[row].type = dataTypes[object as! Int]
tableView.reloadData()

}

我可以更新我的 dataSource 数组,但无法在 tableView 中更新。

最佳答案

您可以使用 NSTableViewDelegate 的 willDisplayCell 方法来实现此目的。

extension ViewController: NSTableViewDelegate {

func tableView(_ tableView: NSTableView, willDisplayCell cell: Any, for tableColumn: NSTableColumn?, row: Int) {

guard let dataCell = cell as? NSPopUpButtonCell else {return}
dataCell.selectItem(at: row) // or dataCell.selectItem(withTitle: //title)
}
}

关于swift - 如何更改 NSPopUpButtonCell NSTableView Swift 4.2 中的 selectItem?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54378780/

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