我想NSSplitView
在我的NSSplitViewController
.
文档说:
要提供自定义拆分视图,请在继承的 viewDidLoad() 方法中调用 super 之前随时设置此属性;也就是说,在拆分视图控制器的 isViewLoaded 属性为 true 之前。
我的NSSplitViewController
子类称为MainVC
.
我尝试-viewDidLoad
在调用之前设置我的自定义拆分视图[super viewDidLoad]
:
- (void)viewDidLoad {
self.splitView = [MySplitView new];
[super viewDidLoad];
// Rest of viewDidLoad...
}
但它没有用。我收到以下错误:
2017-09-02 10:35:43.527312-0700 Zee[6497:632581] ** * 断言失败 -[MainVC setSplitView:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/AppKit/AppKit- 1561/控制器/NSSplitViewController.m:220
2017-09-02 10:35:43.527558-0700 Zee[6497:632581] MainVC:-splitView 只能在视图加载之前分配
我也尝试过覆盖loadView
:
- (void)loadView {
self.splitView = [MySplitView new];
[super loadView];
}
但我得到:
2017-09-02 10:39:39.377345-0700 Zee[6575:639146] ** * -[__NSArrayM objectAtIndex:]:空数组的索引 0 超出范围
如果我在调用后执行分配[super loadView]
,我会得到与我在中尝试时相同的错误-viewDidLoad
。
如何NSSplitView
在我的NSSplitViewController
子类中使用自定义?