tableViewSelectionDidChange

tableViewSelectionDidChange

我有一个带有内容视图的窗口。我以编程方式从其他nib文件加载了子视图。有什么方法可以通过窗口的内容视图上的控件捕获子视图上的更改?

例如,我在子视图上有一个tableview。如果此tableView的选择更改,我想启用Windows内容视图上的按钮。
可能吗?如果是,请指导。

提前致谢..

最佳答案

有几种方法

您可以将创建子视图的对象设置为表视图的委托,并在该对象中实现tableViewSelectionDidChange

或者,您可以订阅NSTableViewSelectionDidChangeNotification通知,并传递tableView:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(tableViewSelectionDidChange:) name:NSTableViewSelectionDidChangeNotification object:tableView];


并处理:

- (void)tableViewSelectionDidChange:(NSNotification *)aNotification {
    NSTableView *tableView = (NSTableView *)aNotification.object;
    NSLog(@"selection changed: %i", [tableView selectedRow]);
}

10-08 20:03