我正在做一个SwiftUI项目,我试图在我的应用程序中有多个不同的Toolbar
版本。当按下一个按钮时,它们理想地应该改变。因此,我使用这个定义定义了几个不同的工具栏(工具栏中的实际代码并不重要):
@ToolbarContentBuilder fileprivate var ______: some ToolbarContent {
ToolbarItem(...)
ToolbarItem(...)
}
下一步是创建一个@State
变量,用于保存当前选定的工具栏。我试着这样做:
@State var navBarView: some ToolbarContent = _________
然而,这给出了错误:
Result builder attribute 'ToolbarContentBuilder' can only be applied to a property if it defines a getter
有人知道如何完成这个目标或绕过这个错误吗?谢谢!
1条答案
按热度按时间rdlzhqv91#
您不应该将
ToolbarContent
用作@State
,就像将View
用作@State
一样。创建一个枚举,它对您拥有的许多工具栏进行编码,例如:
将此用作状态: