0

メインウィンドウ(対応するMainWindowControllerクラスを含む)とメインビュー(NSSplitViewController対応するクラスを含む)を含むストーリーボードがありますMainViewControllerNSSplitView特定の機能について、ビューに含まれるデリゲートをMainWindowControllerクラスに設定しようとしています。

IB リンケージがない場合、デリゲートはアプリケーションの起動時NSSplitViewにすでに設定されています。MainViewControllerへの参照を取得できますがMainWindowController、デリゲートをウィンドウ コントローラー ( を実装する) に設定しようとするとNSSplitViewDelegate、次のようになります。

*** Assertion failure in -[NSSplitView setDelegate:], /Library/Caches/com.apple.xbs/Sources/AppKit/AppKit-1404.34/AppKit.subproj/NSSplitView.m:600

これは、デリゲートを に設定しようとした場合にも発生しnilます。

デリゲートの設定に制限があるかどうか、IB を使用してビュー内のアイテムのデリゲートを別のコントローラーに設定する方法があるかどうか、なぜそうなる可能性があるのか​​ 誰かが知っていますか?

ありがとう。

4

1 に答える 1

1

これについての参照はありませんが、分割ビューと分割ビューコントローラーが分離されることを意図していないことは確かです。幸いなことにNSSplitViewController、デリゲート メソッドを反映しているため、介入する機会が与えられます。したがって、分割ビューのデリゲートを変更する理由はありません。

于 2016-03-19T14:00:07.000 に答える