ios SwiftUI如何强制NavigationView中的导航栏使用分隔符

kuhbmx9i  于 2023-03-20  发布在  iOS
关注(0)|答案(1)|浏览(148)

我的应用使用导航视图提供简单的导航逻辑。我使用inline风格的导航栏:

mainView
  .navigationBarTitleDisplayMode(.inline)

我注意到根视图的导航栏的分隔线不见了,当我向上滚动内容时它出现了。
第一个屏幕截图显示初始状态(无导航条分隔符):

第二个屏幕截图显示了向上滚动内容时的状态,它显示了导航条分隔符:

是否可以始终显示分隔符而不滚动?

wydwbb8l

wydwbb8l1#

我认为您可以通过在VStack下添加手动分隔符和ScrollView来解决此问题,这样分隔符将显示在导航栏下方

//
//  testUI.swift
//  DDStore (iOS)
//
//  Created by belal medhat on 19/02/2022.
//

import SwiftUI

struct navTitleBar: View {
    var body: some View {
        NavigationView {
            // main navigationView
            VStack() {
                // vstack to add the divider and under it the scrollview
                Divider()
                ScrollView() {
                    Text("Hello, World!")
                }.navigationBarTitleDisplayMode(.inline).navigationTitle("Title")
            }
        }
    }
}

struct testUI_Previews: PreviewProvider {
    static var previews: some View {
        navTitleBar()
    }
}

相关问题