【问题标题】:Add View in navigationBarTitle - SwiftUI在 navigationBarTitle 中添加视图 - SwiftUI
【发布时间】:2020-02-05 04:51:47
【问题描述】:

我可以使用 .navigationBarTitle(Text((msgDetails.name))) 添加标题,但我想在导航栏中的标题下添加副标题。看起来标题不会接受视图,它只接受文本。我在标题中尝试了 \n 但它不起作用。有什么办法可以在导航栏中添加字幕。我使用前导和尾随在导航栏中添加左右按钮。我想显示标题和副标题以及这个左右按钮

Navigation Bar

【问题讨论】:

    标签: ios swiftui swiftui-navigationlink


    【解决方案1】:

    如果您查看SwiftUI documentation,您只会看到navigationBarTitle 函数的一些重载。它们都需要特殊参数,例如TextStringProtocol。所以你不能只在导航栏中放一些View

    我可以提出一个奇怪但有效的版本。这是关于使用.navigationBarItems(leading:... - 它需要一些视图,您可以自定义(在合理范围内)。这是一个简单的例子:

    struct ContentView: View {
    
        var body: some View {
    
            NavigationView {
                Text("Main view")
                    .navigationBarItems(leading:
                        HStack {
    
                            Button(action: {}) {
                                Image(systemName: "return")
                            }
    
                            VStack {
                                Text("Title")
                                    .bold()
                                    .font(.system(size: 30))
    
                                Text("Subtitle")
                                    .italic()
                                    .font(.system(size: 15))
    
                            }
                            .padding(.horizontal, 100) // mb it's better to use GeometryReader for centering
    
                    })
            }
    
    
        }
    
    }
    

    你会得到这样的结果:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-28
      • 2021-03-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多