繁体   English   中英

当 WrappedValue GeometryReader PopUp 被激活时,Gray Out/Overlay/Blur out NavigationBar SwiftUI

[英]Grey Out/Overlay/Blur out NavigationBar when wrappedValue GeometryReader PopUp is activated SwiftUI

我构建了一个这样的视图,目的是在单击按钮时模糊视图,如果 $enableSheet 设置为 true,则效果很好,但 NavigationBar 和 NavigationBarTitle 保持不模糊。 这看起来有点奇怪并且违背了目的..? 那么如何使 NavigationBar 变灰/模糊/覆盖? 我不想隐藏它,只要弹出窗口显示它就无法使用

struct ContentView: View {
//...
var body: some View {
ZStack{
 VStack{}
 .blur(radius: $enableSheet.wrappedValue ? 1 : 0)
            .overlay(
                $enableSheet.wrappedValue ? Color.black.opacity(0.6) : nil
            )
            if $enableSheet.wrappedValue {
                 GeometryReader { gr in
//..code
}}
}
.navigationBarItems
.navigationBarTitle
}
}

不要在ContentView上应用模糊,而是在NavigationView上应用模糊。 (如果需要,您可以将模糊视图和导航视图放在 ZStack 中。)然后您可以将enableSheet (和相关变量)公开到环境中,以供任何视图使用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM