ToolbarItemをセンタリングする方法がわからなかったので調べてメモしました。Spacerを使うわけではないようです。

結論:ToolbarItem(placement:.principal) で中心配置できる

navigationBarLeading と navigationBarTrailing しかないと思ったら、全然違うスペルのものでセンタリングできるんですね…

コード

        NavigationView{
            Text("Hello, World!")
                .toolbarBackground(.blue, for: .navigationBar)
                .toolbarBackground(.visible, for: .navigationBar)
                .navigationBarTitleDisplayMode(.inline)
            
                .toolbar{
                    ToolbarItem(placement:.principal){
                        Button(action:{
                            print("unko")
                        }){
                            Image(systemName: "trash")
                                .foregroundColor(.red)
                        }
                    }
                }
        }

結果

真ん中になった

まとめ

・左寄せ
 .navigationBarLeading

・中心
 .principal

・右寄せ
 .navigationBarTrailing

コメント