Swift UIApplication 不在范围内

Swift UIApplication not in scope

我想在出现特定视图时更改 isIdleTimerDisabled。在 SwiftUI 中我使用 .onAppear { UIApplication.shared.isIdleTimerDisabled = true } .onDisappear { UIApplication.shared.isIdleTimerDisabled = false } 但即使使用 import UIKit 我也会收到警告“在范围内找不到 'UIApplication'”。我该如何解决?找了一个多小时没找到解决方法

您不需要导入 UIKit,它应该可以与 SwiftUI 一起使用。

问题可能是你的目标。该文件是否仅在 iOS 或 iPadOS 应用程序目标上使用?

或者它是否也用于扩展,例如 ShareExtension 等?

如果是,则无法在代码中访问 UIApplication。如果此代码在扩展程序和应用程序之间共享,则应使用条件编译来避免此问题。