我有这样的首选项视图设置:
import SwiftUI
@main
struct MyApp: App {
var body: some Scene {
WindowGroup {
ContentView()
}
#if os(macOS)
Settings {
CustomSettingsView()
.onAppear() {
print("this gets called")
}
.onDisappear() {
print("this is never called")
}
}
#endif
}
}
我想在首选项窗口关闭时执行一些操作。有什么方法可以检测到吗?
1条答案
按热度按时间i2byvkas1#
在
CustomSettingsView
中添加一个完成变量,如下所示:然后在
MyApp
视图中:最后,在
CustomSettingsView
中,调用第一个内部组件(例如List
或NavigationView
)的.onDisappear
方法中的completion变量,因此最终的CustomSettingsView
结构体将如下所示: