0

私は次のようなデリゲートメソッドを持っていNSSplitViewます:

- (void)splitViewWillResizeSubviews:(NSNotification *)aNotification
{
    NSLog(@"RESIZE!");
}

このメソッドは、仕切りをドラッグするたびに呼び出されるため、適切に登録されました。これを別のオブジェクトから呼び出したいのですが、これを使用することを考えていました:

[[NSNotificationCenter defaultCenter] postNotificationName:NSSplitViewWillResizeSubviewsNotification object:self];

Apple ドキュメントによると、これはデリゲート メソッドを呼び出すために送信する必要がある通知です。しかし、うまくいきません。誰かが私が間違っていることを知っていますか?

4

2 に答える 2

1

メソッドを手動で呼び出すことができます

NSSplitView * yourSplitView; //Get reference to your splitview
id yourSplitViewDelegate = [yourSplitView delegate];
[yourSplitViewDelegate splitViewWillResizeSubviews:nil];//Optionally create the NSNotification with relevant data

本当に通知センターを通過したい場合selfは、質問に NSSplitView があることを確認してください。

NSSplitView * yourSplitView; //Get reference to your splitview
[[NSNotificationCenter defaultCenter] postNotificationName:NSSplitViewWillResizeSubviewsNotification object:yourSplitView];
于 2013-03-29T18:25:13.743 に答える