0

私は Mac 開発は初めてで (iOS の経験は豊富ですが)、NSWindow で NSViewController を切り替えようとしています。それは本当に簡単です: ボタンが押されると、2 番目のビューを表示し、最初のビューを非表示にします。これが私のコードです:

- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
    firstView = [[FirstView alloc] initWithNibName:@"FirstView" bundle:nil];
    [_window setContentView:menu.view];
}

- (IBAction)openSecondView:(id)sender {
    secondView = [[SecondView alloc] initWithNibName:@"SecondView" bundle:nil];
    [_window setContentView:game.view];
}

メソッドが呼び出され、secondView が正しく読み込まれていることを確認しました。ここで何が問題なのですか?

4

1 に答える 1

3

より簡単な方法は、両方のビューをコンテンツ ビューに読み込み、アルファ値のみを調整することです。

- (void) switchToFirstView: (id) sender {
    [[_secondView animator] setAlphaValue: 0.0f];
    [[_firstView animator] setAlphaValue: 1.0f];
}

- (void) switchToSecondView: (id) sender {
    [[_secondView animator] setAlphaValue: 1.0f];
    [[_firstView animator] setAlphaValue: 0.0f];
}

私は自由にアニメーターを使用してトランジションを上にフェードさせましたが、インスタントスイッチを好む場合は、アニメーターなしで行くこともできます.

于 2012-04-30T10:00:57.103 に答える