【问题标题】:How can you make a change to the @Environment(\.calendar) in SwiftUI?如何更改 SwiftUI 中的 @Environment(\.calendar)?
【发布时间】:2021-01-22 12:42:23
【问题描述】:

我想将@Environment(\.calendar) 更改为使用calendar.firstWeekday = 2。我该怎么做?

【问题讨论】:

    标签: swift swiftui calendar environment


    【解决方案1】:

    您可以创建自己的日历实例,然后将其设置为环境值

    static let myCalendar: Calendar = {
        var calendar = Calendar.current
        calendar.firstWeekday = 2
        return calendar
    }()
        
    

    然后在调用视图的时候

    SomeView()
       .environment(\.calendar, myCalendar)
    

    【讨论】:

      【解决方案2】:

      这是我所做的:

      var body: some Scene {
          WindowGroup {
              ContentView()
                  .environment(\.calendar, {
                      var calendar = Calendar(identifier: .gregorian)
                      calendar.firstWeekday = 2
                      return calendar
                   }())
              }
          }
      }
      

      因此,应用中的所有视图都会获得相同的日历。

      【讨论】:

        猜你喜欢
        • 2020-04-21
        • 1970-01-01
        • 2019-12-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-05-22
        • 1970-01-01
        相关资源
        最近更新 更多