Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/116.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 将背景设置为图像,并使顶部视图透明_Ios_Swift_Swiftui - Fatal编程技术网

Ios 将背景设置为图像,并使顶部视图透明

Ios 将背景设置为图像,并使顶部视图透明,ios,swift,swiftui,Ios,Swift,Swiftui,第一次使用SwiftUI时,如何使imageForBackground成为我的背景和其他所有内容的透明 var body: some View { NavigationView { List(0..<5) { index in NavigationLink(destination: Text("\(index)")) { Image(systemName: "photo") VS

第一次使用SwiftUI时,如何使imageForBackground成为我的背景和其他所有内容的透明

var body: some View {
    NavigationView {
        List(0..<5) { index in
            NavigationLink(destination: Text("\(index)")) {
                Image(systemName: "photo")
                VStack {
                    Text("\(index)")
                }
            }
        }
        .navigationBarTitle(Text("Hello World"), displayMode: .large)    
    }
    .padding()
    .frame(width: nil)
    .background(Image("imageForBackground"))
}

在SwiftUI中,有一个名为“不透明度”的特定修改器,可用于更改任何颜色的alpha级别并使其透明

例如,在您的图像案例中

Image("myImage").opacity(0.8) 
“不透明”值越低,照片越透明

在你的特殊情况下

 .background(Image("imageForBackground").opacity(0.2))
你可以用同样的颜色

Color(red: 1.0, green: 0, blue: 1.0, opacity: 0.2)

希望我能有所帮助

我无法使用列表视图显示背景图像,但使用了不同的方法 通过ScrollView和ForEach实现我认为您需要的功能

var body: some View {
    NavigationView {
        ScrollView {
            VStack {
                ForEach(0..<10, id: \.self) { index in
                    NavigationLink(destination: Text("\(index)")) {
                        Image(systemName: "photo")
                        Text("\(index)")
                        Spacer()
                    }.padding(10)
                }
            }
        }.background(Image(systemName: "globe") // Image("imageForBackground")
            .resizable()
            .scaledToFit()
            .foregroundColor(.green))
        .navigationBarTitle(Text("Hello World"), displayMode: .large)
    }
}

这不是我的意思。列表和导航链接的颜色为白色。如果我将它们设置为“.backgroundImageForBackground.opacity0.2”,那么相同的图像将被设置为三次不同的视图。如何使列表和NavigationLink背景透明,以便在整个视图中看到一幅图像。