ios 带材质的SwiftUI弹出背景

yc0p9oo0  于 2023-01-03  发布在  iOS
关注(0)|答案(1)|浏览(164)

我正在尝试创建一个SwiftUI弹出窗口,背景为半透明材质(常规、薄或超薄),以显示弹出窗口内容背后的一些内容活力。
我试着在背景视图中添加ultraThin和其他材质类型。它们对弹出背景没有任何影响。我也试着通过创建一个视觉效果视图来创建一个UIViewRepresentable。仍然,对弹出背景没有任何影响。

.popover(isPresented: $showPopover) {
                            ZStack {
                                Text("My popover content")
                                    .font(.title)
                            }
                            .frame(width: 250, height: 350, alignment: .center)
                            .background(.ultraThinMaterial)
                        }
wbgh16ku

wbgh16ku1#

默认情况下,弹出窗口在iPadOS和macOS上是半透明的。在iOS上,弹出窗口以模态视图的形式显示。
.background(.ultraThinMaterial)直接应用于您的ZStack视图,但不应用于弹出/模态视图本身。使用UIViewRepresentableUIViewControllerRepresentable只会将您的UIView/UIViewController Package 在视图中,并且仍然不会对弹出/模态视图产生影响。
在当时(SwiftUI 4,Xcode 14.2),无法使用SwiftUI更改弹出/模态视图的背景材料。

相关问题