1

我不知道它是怎么发生的,但是突然在我的表格视图中我不能再做一个空的选择了。就像表格视图行总是必须被选中,并且不能通过单击表格视图中的其他位置来取消选择。我可以选择不同的行,但不能进行空选择。

在表格视图的 Interface Builder 属性中启用了空选择,所以我不知道下一步该往哪里看。我所做的一项重大更改是安装了 OS X Snow Leopard。我不确定这个问题是否与此有关。

谢谢

4

5 回答 5

2

我遇到了同样的问题(我使用的是 XCode 4.2,但针对 10.6sdk 进行编译)。NSOutlineView::deselectAll 只是没有取消选择。我有一个相当复杂的 NSOutlineView ,它表现出相同的行为。我查看了苹果开发者论坛和其他地方来尝试解决这个问题。然而,最终解决这个问题对我来说非常简单,我可以使用:

- (void) myDeselectAll
{
   [self selectRowIndexes:[NSIndexSet indexSet] byExtendingSelection:NO];
}
于 2011-12-20T09:15:35.863 回答
1

尝试使用 setter 方法以编程方式进行setAllowsEmptySelection:。或者,尝试在 IB 中禁用空选择,保存,然后启用它,从而节省更多时间。那可能会解决它。

还要确保里面的东西tableView:shouldSelectRow:不会阻止你(假设你已经实现了这个委托方法)。

于 2009-08-18T22:48:20.380 回答
1

这有点老了,但对于那些需要答案的人来说:使用界面构建器并标记阵列控制器。删除复选标记“避免空选”。如果不这样做,请为阵列控制器创建一个插座。这里我称它为 DocumentArrayController。

然后清空选择:

 [_DocumentArrayController removeSelectionIndexes:
      [_DocumentArrayController selectionIndexes]]; 
于 2015-08-16T06:25:05.750 回答
0

我不能说更多:这似乎是10.6的问题

于 2009-08-23T18:39:41.213 回答
0

您是否将列绑定到数组控制器?如果是这样,请检查控制器的属性。

于 2009-08-19T01:15:45.713 回答