使用SwiftUI定义视图层次结构时,是否可以在定义主体中设置视图的hidden()
值?
例如:
var body: some View {
VStack(alignment: .leading) {
Text(self.name)
.font(.headline)
.hidden()
}
}
将隐藏Text对象,但是我想使用一个布尔属性来切换可见性。
有一种方法可以使用三元运算符和视图的不透明度值来实现,但是我希望有一个不太聪明的解决方案。
谢谢!
答案 0 :(得分:2)
如果您不想以这种方式使用 void ft_free_tab2(char **env)
{
char **ptr;
if (!env)
return ;
ptr = env;
while (*ptr)
{
free(*ptr);
ptr++;
}
free(env);
}
修饰符:
opacity
您可以决定有条件地完全删除该视图:
struct ContentView: View {
@State private var showText = true
var body: some View {
VStack(alignment: .leading) {
Text("Hello world")
.font(.headline)
.opacity(showText ? 1 : 0)
}
}
}
请考虑在struct ContentView: View {
@State private var showText = true
var body: some View {
VStack(alignment: .leading) {
if showText {
Text("Hello world")
.font(.headline)
}
}
}
}
中广泛使用两种方法。对于您的特定情况,我会诚实地使用SwiftUI
修饰符,但即使删除也可以。