Macos NSTableBackgroundView
我有一个Macos NSTableBackgroundView,macos,exception,scroll,nstableview,Macos,Exception,Scroll,Nstableview,我有一个ViewController,它的内容中有一个TableView。 在ViewController中,我通过以下方式访问实际表格: NSView * myView = self.view.subviews[0]; myView = myView.subviews[0]; NSTableView *myTable = myView.subviews[0]; [self.targets sortUsingDescriptors: [myTable sortDescriptors]]; [my
ViewController
,它的内容中有一个TableView
。
在ViewController中,我通过以下方式访问实际表格:
NSView * myView = self.view.subviews[0];
myView = myView.subviews[0];
NSTableView *myTable = myView.subviews[0];
[self.targets sortUsingDescriptors: [myTable sortDescriptors]];
[myTable reloadData];
这实际上很笨拙,但似乎有效。除了当我在表格内按下鼠标时,垂直滚动条处于活动状态。然后,我提出了一个异常,因为在访问子视图
以访问myTable
的最后一行中,子视图
数组在我创建并希望访问的实际TableView
之前有几个nstablebackgroundview
NSTableBackgroundView
显然没有文档记录,也没有sortDescriptors
方法(因此例外)
也许有人可以指出一种更好的方法来获取更可靠的表,或者有人可以说枚举最终的子视图
数组以找到所需的类NSTableView
是否安全
非常感谢 我实现了planB,取而代之的是其他任何答案,我获取子视图数组并对其进行枚举,以找到实际的NSTableView。当我敲打UI来测试它,并且不再升起任何标志时,这似乎起作用了
我希望有一种更简洁的方法可以在不遍历所有子视图的情况下获得我想要的视图。我实现了planB,取而代之的是子视图数组,并对它们进行枚举以找到实际的NSTableView。当我敲打UI来测试它,并且不再升起任何标志时,这似乎起作用了
我希望有一种更干净的方法,可以在不遍历所有子视图的情况下获得我想要的视图