在加载 NSTableViewCell 时设置选定的单元格

Set Selected Cell on load NSTableViewCell

我得到一个 mac 应用程序,它使用 window 左侧的 table 视图作为导航,然后使用另一个 table 视图在右侧显示相关信息。

我通过检查左侧 table 视图中选择的单元格并使用它来更新右侧的信息来执行此操作。

问题是当 table 视图加载时他们没有选择行,所选行显示为 -1(也就是什么都没有)我需要 table 视图来选择行当视图加载时,而不仅仅是在有人选择它之后。有点像取景器 window,当您打开应用程序时,它已经选择了一行。

不,我不想只更改单元格的背景颜色,以便它在应用程序打开时看起来已被选中,因为这不会解决 -1 问题。

您可以使用 NSTableView 上的 API 以编程方式 select 一行:

func selectRowIndexes(_ indexes: NSIndexSet,
 byExtendingSelection extend: Bool)

比方说,你想预先 select 第 0 行,那么你可能需要像在 viewDidLoad 方法中那样调用上面的 API:

tableView. selectRowIndexes(NSIndexSet(index:0) byExtendingSelection:NO)