SwiftUI-如何将Navigation和SideBar的宽度设置为相同的宽度

问题描述

.all(枚举)

我有一个带有SideBar和MainView的内容视图。我想控制SideBar的宽度。我该怎么做?因此,我使用的代码以及无法正常运行的代码。导航视图的宽度比NavBarView的宽。

struct ContentView: View {
    // .....
    var body: some View {
        HStack{
            NavigationView {
                
                SideBarView_HWS().frame(minWidth: 200,idealWidth: 250,maxWidth: 260,maxHeight: .infinity )
                
                BodyInfoStartView()
                
            } //  .frame(minWidth: 200,maxHeight: .infinity ) <<< this isn't working
        }
    }
}

struct SideBarView_HWS: View {
    //....
    @State private var clientExpanded: Bool = true
    @State var selection: String?
    
    var body: some View {
        vstack  {
            List(selection: $selection) {
                ForEach(agendaItems,id: \.self) { string in
                    NavigationLink(destination: AgendaFrameView(description: string)) {
                        Text(string)
                    }
                }
                NavBarSection2()
            }
            .listStyle(SidebarListStyle())
            
            Divider()
            
            disclosureGroup("Show some Text",isExpanded: $clientExpanded) {
                Text("Some Text...")
                    .padding()
                Text("Hello,Mars!").padding()
            }
            .padding()
            
            Divider()
            
            Text( "<Moonwalker is walking>")
        }
    }
}

BTW NavBarSection2只是另一个带有导航链接的ForEach。 我的目标是我需要具有相同的maxWidth约束的sideBar和NavigationView。如果将.frame添加到navigationView,则NavigationView和SideBar消失。如果我仅对SideBar使用Width约束的.frame,那么只有sideBar会缩小到正确的大小,但NavigationView会保持其过宽的大小。它有一些未使用的不需要的空间。

我该如何解决?适用于iPadOS(不是iPhone)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

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