相关疑难解决方法(0)

SwiftUI 侧边栏不记得状态

我有这个应用程序使用iOS14 中为 iPad 操作系统引入的新侧边栏,但我不明白为什么它在隐藏时不记得状态

这是侧边栏结构

import SwiftUI

struct Sidebar: View {
    
    @Environment(\.managedObjectContext) var moc
    @Binding var selection : Set<NavigationItem>
    
    var body: some View {
        List(selection: $selection) {
            NavigationLink(destination: AgendaView().environment(\.managedObjectContext, moc).navigationTitle("Agenda"), label: {
                Label("Agenda", systemImage: "book")
            })
            .tag(NavigationItem.agenda)
            
            NavigationLink(destination: Text("Subjects"), label: {
                Label("Materie", systemImage: "tray.full")
            })
            .tag(NavigationItem.subjects)
            
            NavigationLink(destination: Text("Calendario"), label: {
                Label("Calendario", systemImage: "calendar")
            })
            .tag(NavigationItem.calendar)
            
            NavigationLink(destination: SettingsView().environment(\.managedObjectContext, moc).navigationTitle("Impostazioni"), label: {
                Label("Impostazioni", systemImage: "gear")
            })
            .tag(NavigationItem.settings)
            
        }
        .listStyle(SidebarListStyle())
    }
}
Run Code Online (Sandbox Code Playgroud)

为了标记元素,我使用了一个名为 NavigationItem 的自定义结构

enum NavigationItem {
    case agenda
    case …
Run Code Online (Sandbox Code Playgroud)

sidebar swiftui ipados ios14 xcode12

15
推荐指数
1
解决办法
1670
查看次数

标签 统计

ios14 ×1

ipados ×1

sidebar ×1

swiftui ×1

xcode12 ×1