Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 如何为Mac应用程序设置Kiosk模式?_Macos_Fullscreen_Swift2 - Fatal编程技术网

Macos 如何为Mac应用程序设置Kiosk模式?

Macos 如何为Mac应用程序设置Kiosk模式?,macos,fullscreen,swift2,Macos,Fullscreen,Swift2,我正在尝试以演示模式启动应用程序,同时禁用Dock、菜单栏、进程切换等。到目前为止,我有以下代码: let presOptions: NSApplicationPresentationOptions = .HideDock | // Dock is entirely unavailable. Spotlight menu is disabled. // .AutoHideMenuBar | // Menu B

我正在尝试以演示模式启动应用程序,同时禁用Dock、菜单栏、进程切换等。到目前为止,我有以下代码:

let presOptions: NSApplicationPresentationOptions =
        .HideDock                  |   // Dock is entirely unavailable. Spotlight menu is disabled.
    //  .AutoHideMenuBar           |   // Menu Bar appears when moused to.
    //  .DisableAppleMenu          |   // All Apple menu items are disabled.
        .DisableProcessSwitching   |   // Cmd+Tab UI is disabled. All Exposé functionality is also disabled.
        .DisableForceQuit          |   // Cmd+Opt+Esc panel is disabled.
        .DisableSessionTermination |   // PowerKey panel and Restart/Shut Down/Log Out are disabled.
        .DisableHideApplication    |   // Application "Hide" menu item is disabled.
    //  .AutoHideToolbar           |
        .FullScreen

let optionsDictionary = [NSFullScreenModeApplicationPresentationOptions: presOptions]

browserWindowController.containerView.enterFullScreenMode(NSScreen.mainScreen()!, withOptions: optionsDictionary)
在.HideDock行中,我得到一个错误:

表达式类型不明确,没有更多上下文

有人能帮我找到一个解决方案,并解释错误的含义吗

在browserWindowController行中,我还收到了错误:

使用未解析的标识符“browserWindowController”


有人能给我解释一下为什么这不起作用吗?

使用Swift 2
n应用程序演示选项必须是一个数组:

let presOptions: NSApplicationPresentationOptions = [
    .HideDock,                     // Dock is entirely unavailable. Spotlight menu is disabled.
    //  .AutoHideMenuBar,           // Menu Bar appears when moused to.
    //  .DisableAppleMenu,          // All Apple menu items are disabled.
    .DisableProcessSwitching,      // Cmd+Tab UI is disabled. All Exposé functionality is also disabled.
    .DisableForceQuit,             // Cmd+Opt+Esc panel is disabled.
    .DisableSessionTermination,    // PowerKey panel and Restart/Shut Down/Log Out are disabled.
    .DisableHideApplication,       // Application "Hide" menu item is disabled.
    //  .AutoHideToolbar,           
    .FullScreen
]

至于
browserWindowController
错误,它只是意味着Swift编译器不知道这个变量是什么。它的定义可能超出了当前使用范围,甚至根本没有声明。

我已经更新了swift 4.2的代码。看看吧

//Enter kiosk mode
func KisokMode(){
    let presOptions: NSApplication.PresentationOptions = [
        .hideDock,                     // Dock is entirely unavailable. Spotlight menu is disabled.
        .autoHideMenuBar,           // Menu Bar appears when moused to.
        .disableAppleMenu,          // All Apple menu items are disabled.
        .disableProcessSwitching,      // Cmd+Tab UI is disabled. All Exposé functionality is also disabled.
        .disableForceQuit,             // Cmd+Opt+Esc panel is disabled.
        .disableSessionTermination,    // PowerKey panel and Restart/Shut Down/Log Out are disabled.
        .disableHideApplication,       // Application "Hide" menu item is disabled.
        .autoHideToolbar,
        .fullScreen
    ]
    let optionsDictionary = [NSView.FullScreenModeOptionKey.fullScreenModeApplicationPresentationOptions: presOptions]
    TheWindowExample.contentView?.enterFullScreenMode(NSScreen.main!, withOptions: optionsDictionary) 
}

window示例是要在其中使用kiosk模式的窗口

哇,太快了。谢谢你是的,工作正常,但我在BrowerWindows控制器线路上仍然有一个错误。你知道它是什么,甚至我应该用什么来替换这些线吗?谢谢,不客气。查找您正在创建的位置
让browserWindowController=…
它似乎超出了您尝试使用变量的范围。好的,谢谢,我没有在任何地方声明它。我是Mac应用程序开发新手,只有IOS操作系统的经验,所以我完全不知道如何实际设置演示选项。你能解释一下我应该用什么来代替browserWindowController线路吗?很遗憾,我不能帮你。我建议你就这个具体问题提出一个新问题。我相信我在这里已经回答了关于
NSApplicationPresentationOptions
问题:如果你同意我的观点,你可以从你的帖子中删去第二个问题(与第一个问题无关),并将其作为一个新的问题详细发布。这样你就可以从其他人那里得到帮助(而不是把问题埋在其他人的评论中)。谢谢。:)好的,我会的,谢谢