はじめに
こんにちは!
アプリ開発が好きで、Swiftの勉強をしている大学生です。
温かい目で見ていただけると幸いです。
やりたいこと
タイトルにあるようにNavigationBarにViewを設置したいです。
実装
.toolbar
を利用すると簡単にできました!
public struct HogeView: View {
public var body: some View {
NavigationStack {
VStack {
Text("hoge~~")
}
.toolbar {
Button("right") {
}
}
.navigationTitle("hoge~~")
.navigationBarTitleDisplayMode(.inline)
}
}
}
ただ、デフォルトだと右に表示されるため、左に表示したい場合は以下のようにします
public struct HogeView: View {
public var body: some View {
NavigationStack {
VStack(alignment: .leading) {
Text("hoge~~")
}
.toolbar {
ToolbarItem(placement: .navigationBarLeading) {
Button("right") {
//
}
}
}
.navigationTitle("hoge~~")
.navigationBarTitleDisplayMode(.inline)
}
}
}
両方に設置したい場合は以下のようにします
public struct HogeView: View {
public var body: some View {
NavigationStack {
VStack(alignment: .leading) {
Text("hoge~~")
}
.toolbar {
ToolbarItem(placement: .navigationBarTrailing) {
Button("right") {
//
}
}
ToolbarItem(placement: .navigationBarLeading) {
Button("left") {
//
}
}
}
.navigationTitle("hoge~~")
.navigationBarTitleDisplayMode(.inline)
}
}
}
終わりに
誰かの役に立つことができていれば幸いです。
間違い等がありましたらご指摘していただけると幸いです🙏