SwiftUI:如何将 NavigationBarItem 与大标题导航标题对齐?

问题描述

无论我尝试过什么,我都无法让导航栏项目与此视图上的大标题对齐?我曾尝试使用 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))                          
            }
        )   
    }           
}

image

解决方法

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

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...