如何在 SwiftUI 中设置覆盖层的不透明度

Sto*_*oic 5 xcode overlay swift swiftui

我正在尝试在 SwiftUI 中设置覆盖层的不透明度。但是,我只是想更改叠加层的不透明度,并希望保持正在叠加的符号的不透明度。但是,当我应用 .opacity() 修饰符时,它会更改整个视图(图像和叠加层)的不透明度

                Image(systemName: "magnifyingglass")
                    .resizable()
                    .aspectRatio(contentMode: .fit)
                    .frame(width: 20, height: 20)
                    .padding(10)
                    .overlay(Color.gray)
                    .opacity(0.1)
                    .clipShape(Circle())
Run Code Online (Sandbox Code Playgroud)

这段代码产生这个视图

如您所见,整个视图几乎不可见,我试图仅使搜索图标周围的灰色圆圈不透明,并保持搜索图标本身的不透明度。

Phi*_*hov 8

您要为整个视图添加不透明度,请将其添加到叠加层中:

.overlay(Color.gray.opacity(0.1))