正如标题已经说,我试图使一个视图全屏(使其扩展到SafeArea
),但SwiftUI
似乎总是对齐视图的safeArea
。
在研究了一段时间后,我发现.edgesIgnoringSafeArea(.all)
似乎是一个非常简单的方法。问题是它不起作用。视图仍然不是全屏的。下面是一些示例代码:
struct ContentView : View {
var body: some View {
Text("Test")
.frame(minWidth: 0, maxWidth: .infinity, minHeight: 0, maxHeight: .infinity)
.edgesIgnoringSafeArea(.all)
.background(Color.red)
}
}
4条答案
按热度按时间nhhxz33t1#
只要将..background(Color.red)和.edgesIgnoringSafeArea(.all)交换一下,它就会完美地工作。
jtw3ybtb2#
根据苹果documentation从iOS 14你可以使用fullScreenCover(item:onDismiss:content:)
下面是示例代码:
xam8gpfp3#
带有SwiftUI的增强现实应用在进入全屏时也有问题(Xcode 12. 3,SwiftUI 5. 3)
上面的代码来自AR模板,但是不起作用。
解决方案很棘手:你必须在“[你的目标] -〉常规-〉应用程序图标和启动图像”中将“启动屏幕.故事板”设置为“启动屏幕文件”。2如果项目中没有“启动屏幕.故事板”,在该字段中输入“启动屏幕”仍然可以工作。
我在苹果论坛上找到了一个similar discussion,它解释了失败的潜在原因:
如果设置不正确,那么听起来你的应用程序是启动到一个兼容模式,这是信箱你的应用程序。
pbossiut4#