2014-03-19 131 views
1

在Interface Builder中创建NSTableView并将其连接到NSViewController的子类以获取其数据(在“接口构建器对象”部分中实例化)后,不会遇到任何问题。以编程方式创建NSTableView和自定义NSViewController

现在我想以编程方式创建NSTableView和NSViewController,但我无法弄清楚(我是Cocoa的新手)。考虑到NSViewController的子类没有nib,那么标准的方法是什么呢?

顺便说一下,我想这样做的原因是我想创建一个任意数量的小表视图,将出现(分离)在滚动视图。这是我会后悔的吗?将单个表视图中的地狱定制为更好,以便它看起来被分解成多个部分,而不是实际具有单独的表视图?

谢谢!

回答

1

通过使用[[NSTableView alloc] init],您可以像创建任何其他对象一样创建表视图。从那里你可以用同样的方法创建NSTableColumn实例,并使用addTableColumn:添加它们,并使用setDataSource:将它连接到视图控制器。然后使用addSubview:将其添加到父视图。

几乎所有可以在Interface Builder中完成的任何事情都可以用这种编程方式来完成,虽然它通常是很小的,如果可以帮忙的话不推荐。

另一种方法是设计一个新的NSViewController子类来处理表格,为表格视图创建一个单独的.xib文件,并根据需要使用initWithNibName:bundle:实例化每个新的表格视图。

相关问题