根据条件确定 NavigationLink 是否处于活动状态
Determining whether a NavigationLink is active based on a condition
我有一个 @State 变量,它检测一个按钮被按下了多少次
@State private var count = 0
我有一个导航 link,只有当计数为 5 时才应该激活。请注意,我希望 link 始终显示,所以我不想嵌入导航链接在 if 语句中。
这是我试过的
NavigationLink(destination: Text("hello world"), isActive: count == 5, label: {Text("press")})
我也试过了
NavigationLink(destination: Text("hello world"), isActive: count == 5 ? true : false, label: {Text("press")})
我没想到结果会有所不同,但我试了一下。我收到错误“无法将类型 'Bool' 的值转换为预期的参数类型 'Binding'”。
尝试以下方法
NavigationLink(destination: Text("hello world"),
isActive: .constant(count == 5), // << here !!
label: {Text("press")})
我有一个 @State 变量,它检测一个按钮被按下了多少次
@State private var count = 0
我有一个导航 link,只有当计数为 5 时才应该激活。请注意,我希望 link 始终显示,所以我不想嵌入导航链接在 if 语句中。
这是我试过的
NavigationLink(destination: Text("hello world"), isActive: count == 5, label: {Text("press")})
我也试过了
NavigationLink(destination: Text("hello world"), isActive: count == 5 ? true : false, label: {Text("press")})
我没想到结果会有所不同,但我试了一下。我收到错误“无法将类型 'Bool' 的值转换为预期的参数类型 'Binding'”。
尝试以下方法
NavigationLink(destination: Text("hello world"),
isActive: .constant(count == 5), // << here !!
label: {Text("press")})