Sidebar按钮隐藏起来的正确做法
使用
.toolbar(removing: .sidebarToggle)
可以隐藏侧边栏切换按钮。但是注意,这个不是放在作用在NavigationSplitView上面的。而不是作用在sidebar的视图上面。即必须按照如下的方式使用:
NavigationSplitView(columnVisibility: $columnVisibility) {
sidebar
.toolbar(removing: .sidebarToggle)
} content: {
content
} detail: {
detail
}
隐藏Sidebar的正确做法
NavigationSplitView是三栏的,但是如果你要使用两栏,则有两种方式。
使用sidebar
使用sidebar的好处是,sidebar可以隐藏,也可以显示。
使用sidebar+detail的方式。
不使用sidebar
如果你希望永远显示为两栏,不希望隐藏任何一个栏隐藏,那么使用此方式。
NavigationSplitView(columnVisibility: .constant(.doubleColumn)) {
EmptyView()
.toolbar(removing: .sidebarToggle)
} content: {
content
} detail: {
detail
}
这个的重点在于,通过sidebar设置隐藏了切换sidebar按钮。同时,选择两栏模式,默认不显示sidebar。这样sidebar就无法被调用出来了。并且一直是两栏。
配合Settings使用
在使用Settings时候,包含sidebar的NavigationSplitView的sidebar按钮会导致出现问题。因此,必须使用上面的第二种方式,隐藏sidebar,并且使用一直存在的两栏。