iPhone 日历其实能显示农历 —— 在「设置 → 日历 → 其他历法 → 农历」打开后,每天下面会出现一个小小的农历日期。但这只是显示:它没法让事件按农历重复。把农历生日加成普通的每年重复,它会按公历那天提醒,于是每年偏 10–11 天。
可靠的办法是订阅一个 ICS,把这位家人未来 20 年的农历生日提前按公历算好。这篇教程用 MoonCal 大约五分钟搞定 —— 先讲 iPhone,同一个订阅还会同步到 Mac 和 iPad 上的 Apple Calendar。
iPhone 日历能按农历重复生日吗?
简短回答:靠它自己不行。「其他历法 → 农历」这个设置只是在每天旁边加个农历标签做参考,并不改变事件怎么重复。iOS 没有"按农历每年重复"这个选项,所以唯一能让生日每年都落在正确公历日期的办法,就是用一个外部日历帮你把这些日期算好,再让 iPhone 去订阅它。
第 1 步 —— 创建一个 MoonCal 日历
- 到 usemooncal.com 注册账号(免费,不需要信用卡)。
- 点击"创建日历",起个名字 —— 比如"家庭生日"。
- 选择日历语言:事件标题用中文还是英文。之后可以改。
- 节日预置先跳过 —— 我们下一步加生日。
第 2 步 —— 添加农历生日
- 在日历详情页点击"添加事件"。
- 标题:比如"妈妈的生日"。
- 事件类型:选"生日"。
- 日期类型:选"农历"。
- 填农历的月和日。如果生日在闰月,勾选"这是闰月",再选一个目标年份没闰月时的处理策略 —— 通常选"使用同名常规月"。
- 可选但很实用:填出生年份。MoonCal 会在事件标题后自动加岁数,例如"妈妈的生日(66 岁)",每年自动重算。
- 设置提醒。默认开启"提前 1 天"和"提前 3 天",可以关掉。
- 保存。
如果不确定农历生日是不是闰月,直接问家人最准。中国家庭老一辈的生日记录大多用农历,而 1900–2100 之间真正含某个闰月的年份很少 —— 不勾选闰月在 90% 以上的情况下都是对的。
第 3 步 —— 在 iPhone 上订阅
- 在 MoonCal 日历详情页,点订阅链接旁边的"复制"(链接以 https:// 开头)。
- 在 iPhone 上打开「设置 → 日历 → 账户 → 添加账户 → 其他」。
- 点"添加已订阅的日历"。
- 粘贴 MoonCal 的订阅链接,点"下一步",再点"存储"。
- 回到「设置 → 日历 → 账户」打开这个订阅,确认"使用 SSL"已打开,并按需调整刷新频率。
在 iPhone 上订阅,日历只在这台设备上。如果想一次设置覆盖所有 Apple 设备,可以改在 Mac 上放到 iCloud 账号下(见下文)—— 这样 iPhone 和 iPad 会自动出现。
确认提醒已开启
MoonCal 生成的每个事件都自带"提前 1 天"和"提前 3 天"的提醒(VALARM)。要让它们真的在 iPhone 上响:添加订阅时让"提醒"保持开启,并在「设置 → 通知 → 日历」里允许日历发送通知。
如果填了出生年份,MoonCal 每年自动重算岁数并写进标题(例如"妈妈的生日(66 岁)")。iPhone 日历原样显示这个标题,提醒横幅上直接能看到今年是几岁。
Mac 和 iPad 也能用
同一个订阅在所有设备的 Apple Calendar 上都能用。想一次覆盖所有设备,最简单的是在 Mac 上订阅并放进 iCloud:
- 打开 Mac 上的 Apple Calendar(日历)应用。
- 菜单栏 → 文件 → 新建日历订阅…(或按 ⌥⌘S)。
- 粘贴 MoonCal 的订阅链接,点"订阅"。
- 位置选 iCloud,这样会同步到 iPhone 和 iPad;"自动刷新"设为"每小时";想在这台设备上收到提醒就勾选"提醒"。
- 点"好"—— 未来 20 年的日期马上出现。
放进 iCloud 正是让它在每台设备上自动出现的原因。代价是 iCloud 自己的同步会把刷新压到大约每天一次 —— 对于 20 年内固定的生日完全够用。如果想在某台 Mac 上刷新更快,可以改放到"我的 Mac"本地日历下。
常见坑
- 把农历生日做成了公历的每年重复 —— 每年偏 10–11 天。删掉,改成 MoonCal 里的"农历"日期类型。
- 只靠「其他历法 → 农历」这个设置 —— 它只给日期加标签,并不会让生日按农历重复,你仍然需要订阅。
- iOS「设置 → 通知 → 日历」里关掉了通知 —— 提醒会静默地不响。
- 刷新设成了很长的间隔(或"手动")—— 新增 / 编辑的事件好久才出现。尽量设成每小时。
- 订阅放在 iCloud 但某台设备没开 iCloud 日历同步 —— 在「设置 → [你的名字] → iCloud → 打开日历」。