NSSplitView
のカスタムをNSSplitViewController
としたいと思います。NSSplitViewControllerでカスタムNSSplitViewを設定するには?
docsは言う:
To provide a custom split view, set this property at any time before you call super in the inherited viewDidLoad() method; that is, before the split view controller’s isViewLoaded property is true.
マイNSSplitViewController
サブクラスがMainVC
と呼ばれています。
私は[super viewDidLoad]
を呼び出す前に-viewDidLoad
で私のカスタム分割ビューを設定してみました:
- (void)viewDidLoad {
self.splitView = [MySplitView new];
[super viewDidLoad];
// Rest of viewDidLoad...
}
が、それはうまくいきませんでした。私も
loadView
をオーバーライドしようとした
2017-09-02 10:35:43.527312-0700 Zee[6497:632581] ** * Assertion failure in -[MainVC setSplitView:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/AppKit/AppKit- 1561/Controllers/NSSplitViewController.m:220
2017-09-02 10:35:43.527558-0700 Zee[6497:632581] MainVC: The -splitView can only be assigned before the view is loaded
:私は、次のエラーを得た
- (void)loadView {
self.splitView = [MySplitView new];
[super loadView];
}
しかし、私は得る:
2017-09-02 10:39:39.377345-0700 Zee[6575:639146] ** * -[__NSArrayM objectAtIndex:]: index 0 beyond bounds for empty array
私は[super loadView]
を呼び出した後に割り当てを行う場合、私は同じことを得ます-viewDidLoad
で試してみたときのエラーです。
私のNSSplitViewController
サブクラスでカスタムNSSplitView
を使用するにはどうすればよいですか?
NSSplitViewControllerを使用してカスタム分割ビューを作成する必要があるのはなぜですか? NSSplitViewとNSSplitViewControllerの両方をサブクラス化することで何を得ようとしていますか? –
@ LucasDerraugh私は仕切りの外観をカスタマイズし、NSSplitViewのサブクラス化をしたいと思っています。 – sam