列出按每个工作日的部分分组的日历事件

问题描述

我对 SwiftUI 还很陌生,我目前正在尝试构建一个从日历中获取事件数据的应用程序。在应用程序中,我正在获取从当前日期/时间到本周最后一天的事件。该应用运行良好,但有一件事我似乎无法解决

事件显示在列表视图中,如下所示:

ForEach(eventsData.events ?? [],id: \.self) { event in
                        EventRow(event: event)
                    }

问题是我想通过相应的“分组”每个事件 工作日,像这样:

星期一
事件A
事件 B

星期二
事件C
事件 D

星期三
事件 E
事件 F

我的一个想法是使用另一个 ForEach 来循环一组唯一的工作日(id 1-7 和工作日名称),在 Section(header:) 中显示工作日名称,然后将 id 用作某种在第二个 ForEach 中过滤我的事件(我创建了一个 EKEvent 扩展,它为我提供每个事件的工作日编号)。

这可能是可能的,但问题是我不知道如何构建一组唯一的工作日(1-7 带有工作日名称),该集合正确排序并且还考虑了一周可以开始周日或周一(取决于您住的地方)。

所以,总结一下我正在寻找的东西(我认为):

  • 从周一到周日(或周日到周六)排序的一组工作日 ID 和名称(字典?),它必须考虑第一个工作日。

  • 一种在我的 ForEach 中过滤工作日事件的方法(这可能吗?)

我不知道这是否有意义,我是新手:)

提前致谢!

解决方法

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

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

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