我在我的JTAppleCalendar应用程序中使用iOS,但是我发现很难像通常的日历那样实现显示日历顶部的月份和年份的标题。我遵循了文档中的说明,但我仍然觉得很难,尽管我设法添加了“headers”来显示一周中的每一天,尽管我觉得可能不正确。对于以前实现过这个库的人,我能得到一些帮助吗?或者你用过的另一个日历可以更容易地完成这个任务?
我想让屏幕看起来像这样:

而我的现在看起来是这样的:

文档:https://patchthecode.github.io/Headers/
我实行的是一周中的几天:
// This sets the height of your header
func calendar(_ calendar: JTAppleCalendarView, sectionHeaderSizeFor range: (start: Date, end: Date), belongingTo month: Int) -> CGSize {
return CGSize(width: 200, height: 50)
}
// This setups the display of your header
func calendar(_ calendar: JTAppleCalendarView, willDisplaySectionHeader header: JTAppleHeaderView, range: (start: Date, end: Date), identifier: String) {
let headerCell = (header as? PinkSectionHeaderView)
headerCell?.title.text = "S M T W T F S"
}发布于 2017-04-08 17:55:18
我觉得你把事情搞得比该做的要困难得多。
您在教程站点上看到的是一个例子,说明如何在该站点上设置一个带有简单UILabel的标题,名为title。如果你的日历设计是不同的,你不需要完全遵循这一点。只要你愿意就设计它。
你想要的似乎不是一个UILabel。您需要7个标签;每个标签代表一周中的一天。最简单的方法就是在水平的Stackiew中创建7 UILabels。StackView的间距应设置为full,并应设置为fill equally。然后,您所要做的就是单击单个标签,并将其对齐设置为“中心”。

使StackView的约束延伸到headerView的末端。好了。你的“S-M
接下来,你似乎还需要另外两个标签。一个用于Month,另一个用于Year。因此,在header视图中创建这些标签,然后为它们创建outletLets。然后,您可以在下面的函数中正确地设置它们。
func calendar(_ calendar: JTAppleCalendarView, willDisplaySectionHeader header: JTAppleHeaderView, range: (start: Date, end: Date), identifier: String) {
}https://stackoverflow.com/questions/43288287
复制相似问题