你如何在 swiftUI 中禁用 navigationBaritems
How do you disable a navigationBaritems in swiftUI
我有一个 .navigationBarItems 按钮,我想 enable/disable 取决于我的应用程序在做什么,但我一辈子都不知道该怎么做?!
我的视图通过 NavigationView 被拉入我的主应用程序视图,所以我知道栏项目显示正确等等。在我看来,导航到它时会被拉入,我在堆栈底部有这段代码:
.navigationBarItems(
trailing:
Button("End Day") {
//do something here
scheduleEndDayNotificatons()
}
)
我希望能够将尾随的“结束日”按钮切换为 enabled/disabled,可能基于某些 Bool 状态变量?例如,当用户进入应用程序的某个模式时,它会启用,当他们退出该模式时,它会被禁用。我的应用程序是一个锻炼应用程序,所以当他们锻炼时我希望它被启用,当他们完成锻炼时它被禁用(这是默认设置)。
非常感谢任何帮助!谢谢!!
我们可以使用应用于 Button 的修饰符 .disabled
和 link 它与一些状态变量,例如
@State private var isDisabled = false
// ... other code
.navigationBarItems(
trailing:
Button("End Day") {
//do something here
scheduleEndDayNotificatons()
}
.disabled(isDisabled)
)
我有一个 .navigationBarItems 按钮,我想 enable/disable 取决于我的应用程序在做什么,但我一辈子都不知道该怎么做?!
我的视图通过 NavigationView 被拉入我的主应用程序视图,所以我知道栏项目显示正确等等。在我看来,导航到它时会被拉入,我在堆栈底部有这段代码:
.navigationBarItems(
trailing:
Button("End Day") {
//do something here
scheduleEndDayNotificatons()
}
)
我希望能够将尾随的“结束日”按钮切换为 enabled/disabled,可能基于某些 Bool 状态变量?例如,当用户进入应用程序的某个模式时,它会启用,当他们退出该模式时,它会被禁用。我的应用程序是一个锻炼应用程序,所以当他们锻炼时我希望它被启用,当他们完成锻炼时它被禁用(这是默认设置)。
非常感谢任何帮助!谢谢!!
我们可以使用应用于 Button 的修饰符 .disabled
和 link 它与一些状态变量,例如
@State private var isDisabled = false
// ... other code
.navigationBarItems(
trailing:
Button("End Day") {
//do something here
scheduleEndDayNotificatons()
}
.disabled(isDisabled)
)