如何检查窗口在SwiftUI中是否处于全屏状态,或者单击绿色按钮切换窗口时是否运行代码?

问题描述 投票:-1回答:1

我想在我的游戏中添加全屏模式设置。但是,如果用户自己手动切换全屏,我需要自动更新设置。以任何方式切换全屏后,如何运行代码?因为如果IDK如何执行此操作,那么如果他们使用窗口顶部的绿色按钮将其全屏显示,则该设置以及它是否实际上是全屏显示将不会同步,这确实是愚蠢的。抱歉,当我必须等待这么长时间才能回答问题时,这会破坏我的一天。

由于这些原因,不应删除或贬低这篇文章:

  • 我还没说什么呢
  • 我没有提倡任何罪行
  • 我什至没有使用过不雅的语言]
  • 我的问题是关于编程的,足够具体地回答
  • 我的问题不是试图推广产品或服务。
  • 我还没有张贴检查过的屁股的照片,或任何类似的东西。
  • 我没有侮辱任何人。

请记住,我的问题是完全适当的,所以请您回答?

swift macos swiftui fullscreen
1个回答
0
投票

您只需要等待NSWindow的通知,就可以>

      import SwiftUI
      import Combine

   struct SampleView: View {


var cancellabel : AnyCancellable?

    init(){
     cancellabel =
        NotificationCenter.default.publisher(for:      NSWindow.willEnterFullScreenNotification).sink { (notification) in
        print(notification.object)
    }


    }



   var body: some View {
    ....}}
© www.soinside.com 2019 - 2024. All rights reserved.