gpt4 book ai didi

cocoa - NSTableView 行操作 - 单击后向后滑动

转载 作者:行者123 更新时间:2023-12-03 16:34:47 25 4
gpt4 key购买 nike

我使用 tableView(_:rowActionsForRow:edge:) -> [NSTableViewRowAction] 在表格 View 中添加了幻灯片功能,但我发现当我单击前导按钮时,它工作正常,但它就是不会滑回来。

这是我的行操作的代码:

extension ViewController: NSTableViewDelegate {
func tableView(_ tableView: NSTableView, rowActionsForRow row: Int, edge: NSTableView.RowActionEdge) -> [NSTableViewRowAction] {
// some other codes
switch edge {
case .trailing:
// some other codes
case .leading:
let revealInFinderAction = NSTableViewRowAction(style: .regular, title: "Reveal in Finder") { (action, row) in
self.revealInFinder(row: row)
}
revealInFinderAction.backgroundColor = .systemOrange
return [revealInFinderAction]
}
}
}

例如,我的一个按钮执行“在 Finder 中显示”作业 (revealInFinderAction),单击该按钮后,它会在 Finder 中显示该文件,但是它没有滑回来。

我发现苹果的邮件应用程序可以完美地处理这个问题,在滑动其中一个单元格后单击“标记为已读/未读”按钮后,它完成了它的工作并自动滑回。我只是想找到一种方法来实现同样的事情。

我已经研究过如何实现这一目标,但找不到解决方案,有人可以帮助我吗?我在 macOS 10.14 上使用 Xcode 10 和 Swift 4。

最佳答案

尝试设置tableView.rowActionsVisible = false,如下所示:

case .leading:
let revealInFinderAction = NSTableViewRowAction(style: .regular, title: "Reveal in Finder") { (action, row) in
self.revealInFinder(row: row)
tableView.rowActionsVisible = false
}
revealInFinderAction.backgroundColor = .systemOrange
return [revealInFinderAction]

关于cocoa - NSTableView 行操作 - 单击后向后滑动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54503150/

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