我希望隐藏 Home Indicator,虽然这在 Swift 中很简单,但在 SwiftUI 中似乎并不那么容易。
我尝试使用这个:
如何使用 SwiftUI 隐藏 home 指示器? https://stackoverflow.com/questions/56795572/how-to-hide-the-home-indicator-with-swiftui
但随着 SceneDelegate 的删除,我太绿了,不知道如何正确地将其转换为新的应用程序协议。
有人有什么想法吗?
Dan
这是替换默认值的可能方法WindowGroup
窗口的托管控制器与任何自定义控制器(在本例中没有主页指示器)。
辅助扩展取自之前提供的解决方案https://stackoverflow.com/a/63276688/12299030 https://stackoverflow.com/a/63276688/12299030.
使用 Xcode 12 / iOS 14 进行测试
@main
struct MyApp: App {
@UIApplicationDelegateAdaptor(MyAppDelegate.self) var appDelegate
var body: some Scene {
WindowGroup {
Text("") // << temporary placeholder
.withHostingWindow { window in
let contentView = ContentView().environmentObject(SomeObservableObject())
window?.rootViewController =
HideHomeIndicatorController(rootView: contentView)
}
}
}
}
以及托管控制器的简化变体,用于隐藏主页指示器
class HideHomeIndicatorController<Content:View>: UIHostingController<Content> {
override var prefersHomeIndicatorAutoHidden: Bool {
true
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)