swiftui text,如何将布尔值传递给func hidden()
在swiftui文本中有一个名为hidden()的函数。设置此函数时,文本不可见。到目前为止一切都很好。现在我希望它只有在设置Bool值时才是不可见的。不幸的是,我不能传递布尔值swiftui text,如何将布尔值传递给func hidden(),swiftui,Swiftui,在swiftui文本中有一个名为hidden()的函数。设置此函数时,文本不可见。到目前为止一切都很好。现在我希望它只有在设置Bool值时才是不可见的。不幸的是,我不能传递布尔值 Text("Bitte Password eingeben") .foregroundColor(.white) .padding(EdgeInsets(top: 50, leading: 5, bottom: 0, trailing: 0
Text("Bitte Password eingeben")
.foregroundColor(.white)
.padding(EdgeInsets(top: 50, leading: 5, bottom: 0, trailing: 0))
.cornerRadius(5)
.textContentType(.password)
.hidden()
当某些状态像这样启用时,您可以返回视图的
.hidden()
版本(请注意,隐藏版本和非隐藏版本是两种不同的类型,这就是为什么需要类型擦除器--某些视图
意味着函数中的所有存在都必须返回符合视图的相同类型):
当某些状态像这样启用时,您可以返回视图的
.hidden()
版本(请注意,隐藏版本和非隐藏版本是两种不同的类型,这就是为什么需要类型擦除器--某些视图
意味着函数中的所有存在都必须返回符合视图的相同类型):
我在
视图
上写了一个小小的扩展,因为我发现hidden()
不带参数是非常令人惊讶的:
extension View {
func isHidden(_ hidden: Bool) -> some View {
if hidden {
return self.hidden().eraseToAnyView()
} else {
return self.eraseToAnyView()
}
}
func eraseToAnyView() -> AnyView {
return AnyView(self)
}
}
我在
视图
上写了一个小小的扩展,因为我发现hidden()
不带参数是非常令人惊讶的:
extension View {
func isHidden(_ hidden: Bool) -> some View {
if hidden {
return self.hidden().eraseToAnyView()
} else {
return self.eraseToAnyView()
}
}
func eraseToAnyView() -> AnyView {
return AnyView(self)
}
}
这是一个非常好的小扩展,尽管我需要将“橡皮擦到任何视图”转换为“任何视图(self.hidden())”等。为了让它工作,这是一个非常好的小扩展,尽管我需要将“橡皮擦到任何视图”转换为“任何视图(self.hidden())”等