1

ユーザーがログインするとすぐにフルスクリーンで自動的に開くアプリケーションを作成するために、ユーザーがアプリケーションを閉じたり、このアプリを使用する以外の操作を実行したりできないように、キオスク モードでアプリケーションを開こうとしています。

AppDelegate で次のコードを使用すると、アプリケーションを手動で起動した場合にのみ機能しますが、起動時にアプリケーションが自動的に開かれるとフルスクリーンで開きません(システム環境設定、アカウント、ログイン項目に追加しました):

-(void) awakeFromNib {
    NSApplicationPresentationOptions presentationOptions = (NSApplicationPresentationHideDock |
                                                            NSApplicationPresentationHideMenuBar |
                                                            NSApplicationPresentationDisableAppleMenu |
                                                            NSApplicationPresentationDisableProcessSwitching |
                                                            NSApplicationPresentationDisableForceQuit |
                                                            NSApplicationPresentationDisableSessionTermination |
                                                            NSApplicationPresentationDisableHideApplication);
    NSDictionary *fullScreenOptions = @{NSFullScreenModeApplicationPresentationOptions: @(presentationOptions)};
    [_window.contentView enterFullScreenMode:[NSScreen mainScreen] withOptions:fullScreenOptions];
}

何か案が?ありがとう!

4

2 に答える 2

0

NSWindow の toggleFullScreen を呼び出してみて、そのビューのサイズが NSWindow に対して相対的に大きくなるように制限することができます。

于 2014-09-01T22:33:18.857 に答える
0

あなたのアプリはおそらくアクティブなアプリではありません。アプリのプレゼンテーション オプションは、アプリがアクティブなときにのみ有効になります。

[NSApp activateIgnoringOtherApps:YES]フルスクリーンに入る前に、おそらく行う必要があります。

于 2014-09-02T00:32:10.950 に答える