基本上,我想做到这一点,以便当用户安装我的 macOS 14 程序时,每个打开的应用程序窗口的标准关闭、最小化和最大化按钮旁边会出现另一个窗口按钮。
我想让这个按钮在按下时“固定”应用程序,并防止用户关闭它,直到用户再次按下它,取消固定它。
问题是,我不知道如何实现这一点,而且作为 Swift 编程和应用程序开发的新手,官方 Xcode 文档对我来说非常混乱。我也花了无数时间研究这个问题,但似乎没有相关结果。我确信这是可能的,因为 Parallels Desktop 应用程序可以执行此操作(当您打开应用程序时,它会在交通锥旁边添加一个自定义蓝色按钮)。
有人可以帮我吗?我需要帮助来创建标准窗口按钮旁边的按钮,并在单击该按钮时禁用关闭按钮。如果这不能直接实现,那么有解决方法吗?我对此完全是初学者,因此任何有关具体和清晰说明的帮助将不胜感激。
顺便说一句,我使用的是 Xcode 15 和 Swift 5。
我尝试了一些解决方法,例如创建一个工具栏,然后向该工具栏添加一个按钮,但该按钮最终位于窗口的右侧,而我希望它位于左侧,紧邻标准窗口按钮。我还尝试创建一个按钮,然后将其放置在屏幕顶部,但它不允许我将按钮放置在高于标题栏的位置。
我也不知道如何禁用关闭按钮,以及如何使每个应用程序窗口都有此按钮。
我能想到的最好方法是使用
.navigation
工具栏放置,以及 .frame
让它们彼此靠近。你可以尝试这样的事情:
.toolbar {
ToolbarItem(placement: .navigation) {
Button {
// Button action
} label: {
Image(systemName: "circle.dotted.circle.fill")
.resizable()
.scaledToFit()
.padding(.leading, -10)
.frame(width: 13, height: 13)
.symbolRenderingMode(.hierarchical)
}
.ignoresSafeArea()
.frame(width: 0, height: 15)
.padding(.trailing, 10)
}
}
我尝试了一下,似乎有效。您只需按照您想要的方式设置按钮的格式即可。不确定是否有替代解决方案,但希望这对您来说是一个很好的解决方法!