2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

[SwiftUI] NavigationBarにViewを設置する方法

Posted at

はじめに

こんにちは!
アプリ開発が好きで、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)
        }
    }
}

終わりに

誰かの役に立つことができていれば幸いです。
間違い等がありましたらご指摘していただけると幸いです🙏

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?