这里没有显示代码,但我想知道如何做到这一点。我试过用
.blur(radius: (20)
Run Code Online (Sandbox Code Playgroud)
在一个视图上,但它往往会模糊整个视图。包括文本和视图中的任何其他内容。默认背景颜色很好,我不想/不需要更改它(为了使应用程序与明/暗模式兼容)。我想让视图的背景稍微模糊/不透明,但我希望视图中的文本和按钮仍然保持完整和正常。有什么办法可以只模糊视图本身的背景颜色吗?
所以从技术上讲,我想显示一个加载屏幕视图。我正在使用fullScreenCover.
struct ContentView: View {
@State private var isLoading = false
var body: some View {
VStack {
Text("Hello there")
Button("Start loading") {
isLoading.toggle()
}
.fullScreenCover(isPresented: $isLoading) {
ZStack{
Color.black.opacity(0.5).edgesIgnoringSafeArea(.all)
VStack {
ProgressView()
Button("Stop loading") {
isLoading.toggle()
}
}
}
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
问题是我无法使这个加载屏幕半透明。sheet或popover以同样的方式行事。