如何在SwiftUI中使背景透明?

时间:2019-11-11 17:14:53

标签: ios swift swiftui

如何使导航栏上方的文本背景半透明,以使文本和导航栏看起来像是同一对象?

VStack(spacing: 0) {
    Text("Test")
        .padding(.top, 9.5)
        .padding(.bottom, 8)
        .frame(minWidth: 0, maxWidth: .infinity)
        .background(Color.gray) // I used a custom color set in the screenshot
        .font(.footnote)
    NavigationView {
        List {
            Text("Name")
            Text("Name")
            Text("Name")
        } .listStyle(GroupedListStyle())

        .navigationBarTitle(Text(""), displayMode: .inline)
        .navigationBarBackButtonHidden(true)
        .navigationBarItems(
            leading:
            Button("Cancel") {
                // self.presentationMode.wrappedValue.dismiss()
            },
            trailing:
            Button("Done") {

            }.disabled(true)
        )
    }
}

enter image description here

1 个答案:

答案 0 :(得分:0)

SwiftUI的Color具有返回具有特定不透明度的另一个Color的功能。不透明度1.0是相同的颜色,而不透明度0.0是完全透明的。

例如,如果要使颜色介于完全不透明和完全透明之间,请更改:

Text("Test")
        .padding(.top, 9.5)
        .padding(.bottom, 8)
        .frame(minWidth: 0, maxWidth: .infinity)
        .background(Color.gray)
        .font(.footnote)

收件人:

Text("Test")
        .padding(.top, 9.5)
        .padding(.bottom, 8)
        .frame(minWidth: 0, maxWidth: .infinity)
        .background(Color.gray.opacity(0.5))
        .font(.footnote)

来源:https://developer.apple.com/documentation/swiftui/color

相关问题