0

无论我尝试了什么,我都无法让这个导航栏项目与这个视图上的大标题对齐?我尝试使用 Spacer() 填充或将其放置在 VStack 中,但均未将其向下推。我怎样才能正确对齐它?

var body: some View {
            NavigationView {
                  //omitted 
                        .navigationTitle("Exertion")
                    }
                    .navigationBarItems(
            trailing:
                    Button(action: {
                        self.isShowingExertionCalendarSheet.toggle()
                    }) {
                        Image(systemName: "calendar")
                              .font(.system(size: 30, weight: .bold))                          
            }
        )   
    }           
}

图片

4

2 回答 2

0

你不能。因为导航标题是动态的,因为它可以在滚动时从小变为大,至少您另有说明,UI 不允许您将导航项设置为在预期之外的其他位置垂直对齐。那是在安全区域的正下方。就像给一个领先的导航项隐藏了后退按钮。这就是 Cocoa Touch 通过 SwiftUI 或 UIKIt 工作的方式。

于 2021-02-11T00:20:12.617 回答
0

好吧,我认为您可以执行以下操作:

.navigationBarItems(
            leading: Text("Exertion")
                .fontWeight(.bold)
                .font(.largeTitle),
            trailing: Button(action: {
                ... your code here ...
            }, label: {
                Image(systemName: "calendar")
                    .foregroundColor(Color("Some Blue"))
            })
        )
于 2021-11-07T05:24:22.753 回答