我可以点击一个单元格并编辑其内容。但是,不是单击/选择一个单元格,而是可以通过编程方式选择一个单元格 - 基本上可以让单元格焦点准备好进行编辑。
有人在StackOverflow上问了一个关于UITableView的问题,答案是: -
let indexPath = NSIndexPath(forRow: 2, inSection: 0)
tableView.selectRowAtIndexPath(indexPath, animated: true, scrollPosition: .Middle)
selectRowAtIndexPath是否选择了一个单元格?在任何情况下,我的NSTableView似乎都没有.selectRowAtIndexPath(...方法。
请指出我可以开始的资源,并为自己找出其余部分。
答案 0 :(得分:3)
在这里提问之前,我已经用Google搜索了两天。但现在几乎在发布问题之后我立即开始工作了。 事实上它很简单,我无法相信花了这么长时间才弄明白。
// Assuming we want to programmatically select Column 4, Row 5
myTableView?.editColumn(4, row: 5, withEvent: nil, select: true)
在我的旅行中,我发现有数十人在问这个问题,但没有简单的答案。或者实际使用NSTableView而不是UITableView并且tableView是“基于视图”而不是基于单元格的答案。所以我希望我在这里发帖可以帮助其中一些人。
答案 1 :(得分:0)
Use可以使用此方法。
mytableView.selectRowIndexes(IndexSet([indexOfTheCellWantToSelect]), byExtendingSelection: true)
答案 2 :(得分:0)
我觉得这很干净...作为单元格的扩展
extension NSTableViewCell
{
func select()
{
guard let row = self.tableView?.row(for: self) else { return }
self.tableView?.selectRowIndexes(IndexSet([row]), byExtendingSelection: false)
}
}