2

NSWindowController次のようなカスタム サブクラスによってロードされる nib ファイルに含まれるウィンドウがあります。

- (id)init
{
    self = [super initWithWindowNibName:@"MyWindow"];

    return self;
}

このウィンドウが表示される前に、このウィンドウのビューを初期化したいと思います。現在、いくつかのユーザー デフォルトを読み込んで、ウィンドウのビューを に設定していますwindowDidLoad。残念ながら、新しく初期化された値はウィンドウが表示された後にのみ適用されるため、初期化されていない値が非常に短時間点滅します。

windowWillLoadその時点ではまだウィンドウがnibファイルからロードされていないため、機能しません。

ウィンドウを表示する前にウィンドウを初期化するにはどうすればよいですか?

4

2 に答える 2

4

独自の" showWindow"メソッドを実行できます。

- (IBAction)showWindow:(id)sender
{
    // do whatever initialization 
    // or window UI setup you 
    // need to do right here
    [super showWindow: sender];
}
于 2012-06-17T02:54:57.477 に答える
1

- (void)awakeFromNibビューのセットアップを行うのに非常に適した場所です。すべてのオブジェクトがアーカイブ解除され、アウトレットが接続された後に呼び出されます。

ドキュメントの詳細

于 2012-06-17T08:25:11.517 に答える