草庐IT

swift - macOS 基于文档的应用程序会自动启用协作吗?

我希望使用Xcode在macOS上构建一个基于文档的应用程序并以macOSHighSierra为目标。NSDocument是否提供类似于Pages的文档协作?苹果的DocumentBasedApps页面表明协作是适当的基于文档的应用程序的一个功能,但我还没有看到这个问题的明确答案。 最佳答案 最后,我通过简单地观看我尚未观看的WWDCsession找到了浏览Apple过时文档(看起来已经像一个被遗弃的孤儿)的方法。我可以指出您问题的答案,因为我也在寻找它。答案是否定的,NSDocument或UIDocument类不像在Pages或N

swift - Swift macOS 的桌面沙箱问题

我最近一直在尝试编写一个Mac应用程序,但遇到了一个问题。这不是太重要,但如果有解决方案就太好了。我必须在运行时加载由用户指定的图像(所以不,我不能像许多替代方案所建议的那样将图像嵌入包中),并使用NSAttributedText将其嵌入到NSTextView中。图像从图片目录(/Users/USERNAME/Pictures/IMAGE)等加载正常,但不是从桌面加载。我检查了Xcode中的Capabilities选项卡,并为所有可用选项启用了读/写:image使用FileManager,我确定该文件确实存在,但不可读。我可以在授权文件中手动设置吗?提前致谢。

swift - 如何在 macOS 中进入真正的全屏模式?

通过下面的代码,我尝试在macOS中进入真正的全屏模式。如果nil作为选项传递,则它会进入某种全屏模式,但没有内容可见。classViewController:NSViewController{overridefuncviewDidLoad(){super.viewDidLoad()letopts:NSApplication.PresentationOptions=[.fullScreen]varoptions=[NSView.FullScreenModeOptionKey:Any]()options[.fullScreenModeAllScreens]=0//options[.ful

swift - 使用 Swift 5 为 Swift Package Manager 指定最低 macOS 版本

为了在不添加#ifavailable的情况下使用SwiftPM编译一些代码,我正在使用以下参数构建项目:swiftbuild-Xswiftc"-target"-Xswiftc"x86_64-apple-macosx10.11"SwiftPackageManager也适用于Xcode.xcconfig文件,但仅限于生成Xcode项目时。在使用swiftbuild从命令行构建时,Swift5中是否有一种简单的方法来指定macOS的最低版本?编译错误示例:error:'archivedData(withRootObject:)'isonlyavailableonOSX10.11ornewer

macos - 将 struct ProcessSerialNumber 转换为 UnsafePointer<Void>

我有一个ProcessSerialNumber并想创建一个NSAppleEventDescriptor从中,与issue14ofobjc.io中所示的方式相同.然而,构造函数期望一个UnsafePointer.letpsn=ProcessSerialNumber(highLongOfPSN:UInt32(0),lowLongOfPSN:UInt32(kCurrentProcess))lettarget=NSAppleEventDescriptor(descriptorType:typeProcessSerialNumber,bytes:&psn,//我缺少什么才能正确转换它?

swift - Swift 中的 macOS 终端模拟器

我正在尝试使用Swift语言(目前在Swift4.0上)创建一个终端模拟器到目前为止,我已经创建了一个UI,唯一的问题是我的一些命令不起作用,例如:diskutilmountdisk0s1这会在Xcode控制台输出中给我以下错误:"CouldnotstartupaDiskManagementsession"一些命令可以工作,例如:echoHi这是我到目前为止实际执行命令的代码:@discardableResultfuncshell(_args:String)->Int32{lettask=Process()task.launchPath="/usr/bin/env"letcmd=arg

swift - NSAlert 中的多个 NSTextField - MacOS

我正在MacOS上使用Swift4中的NSAlert组合登录对话框。这是我到目前为止的代码:funcdialogOKCancel(question:String,text:String)->(String,String){letalert=NSAlert()alert.messageText=questionalert.informativeText=textalert.alertStyle=.warningalert.addButton(withTitle:"Login")alert.addButton(withTitle:"Cancel")letunameField=NSTextF

swift - macOS NSTabViewController 居中选项卡图标

我有一个我创建的macOS应用程序。我有一个使用swift&storyboard构建的Preferences窗口,带有一个样式为NSTabViewController的tabless工具栏。不过我看不出有什么方法可以覆盖选项卡图标的位置——它们默认位于窗口的左侧。可能吗? 最佳答案 子类NSTabViewController并覆盖functoolbarDefaultItemIdentifiers(_toolbar:NSToolbar)->[NSToolbarItem.Identifier]。在两侧添加一个flexibleSpace工

macos - swift:如何单选菜单?让它们互斥?

我想实现单选菜单,这里是我辈的菜单subMenu.addItemWithTitle("Item001",action:Selector("testAction:"),keyEquivalent:"\(code)")subMenu.addItemWithTitle("Item002",action:Selector("testAction:"),keyEquivalent:"\(code)")subMenu.addItemWithTitle("Item003",action:Selector("testAction:"),keyEquivalent:"\(code)")subMenu.a

macos - swift 将 NSData 解压回 NSColor

我已经存档了一个NSColor以将其存储在NSUserDefaults中:vardata=NSArchiver.archivedDataWithRootObject(NSColor.redColor())storage.setObject(data,forKey:"color")storage.synchronize()但现在我需要从NSData取回颜色,我不知道该怎么做 最佳答案 你只需要使用iflet来解包你的NSData并且你还需要一个条件转换如下:编辑/更新:Swift3或更高版本//archivingletcolor:NS