Trying to Create UI Similar to Postman in SwiftUI
Trying to Create UI Similar to Postman in SwiftUI
I'm using Xcode 16.4 (16F6) and whatever version of SwiftUI that comes with it (as an aside, where can I look up the Swift/SwiftUI versions for my version of Xcode?). I want to create an interface that uses a static (always visible) sidebar with buttons, and a collapsable detail view similar to what's in Postman where there is a toolbar that spans the sidebar and detail views when the detail view is visible, but turns into a button when collapsed.
I've found NavigationSplitView, and in combination with a HStack+VStack for the static sidebar, it gets me 95% of the way to what I am looking to do. I am just not sure how can I make the toolbar that spans between the sidebar and the split view having the toolbar where Postman has the "My Workspace" and New/Import buttons.
Here is the code I've got so far:
HStack(alignment: .top, spacing: -2) { VStack(alignment: .leading, spacing: 2) { Button { } label: { VStack { Image(systemName: "folder") .font(.title2) .padding(3) Text("Collections") } .frame(maxWidth: .infinity, maxHeight: 60) } .buttonStyle(.plain) .cornerRadius(4) Button { } label: { VStack { Image(systemName: "folder") .font(.title2) .padding(3) Text("History") } .frame(maxWidth: .infinity, maxHeight: 60) } .buttonStyle(.plain) .cornerRadius(4) } .font(.caption) .padding(3) .frame(maxWidth: 80) NavigationSplitView { ContentUnavailableView { Text("Hello, World") .font(.body) } } detail: { ContentUnavailableView { } description: { Text("Select an action on the left to begin.") } } }
I don't know what I don't know, so if NavigationSplitView is not the way, I'm open to using different mechanisms.