首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过JTAppleCalendar显示月份和年份作为标头

通过JTAppleCalendar显示月份和年份作为标头
EN

Stack Overflow用户
提问于 2017-04-07 23:05:57
回答 1查看 2.7K关注 0票数 3

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

我想让屏幕看起来像这样:

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

文档:https://patchthecode.github.io/Headers/

我实行的是一周中的几天:

代码语言:javascript
复制
    // 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"
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 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。然后,您可以在下面的函数中正确地设置它们。

代码语言:javascript
复制
func calendar(_ calendar: JTAppleCalendarView, willDisplaySectionHeader header: JTAppleHeaderView, range: (start: Date, end: Date), identifier: String) {
}
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43288287

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档