Files
yola/Pink/docs/我的零碎.md
T
2026-07-17 15:37:35 +08:00

32 lines
2.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
项目下的 美柚APP备孕日历功能列表.md 和 经期设置和计算.md 是美柚这个产品跟备孕日历设置相关的内容(不一定完全准确)。
我想在pink项目里面,逐步实现大部分相关的功能。
首先,我想实现经期设置 最基础的功能,在日历上展示:月经期、预测经期、排卵期、排卵日
我们的日历需要相应的改造,能够呈现月经期、预测经期、排卵期、排卵日的状态。
预测经期:通过 淡粉色背景色填充日历的格子, 在日历上自动多选连续的预测经期。
排卵期: 通过 紫色背景色填充日历的格子, 在日历上自动多选连续的排卵期。
排卵日: 使用 深紫色的 小实心6变形,在日历中被预测的排卵日那个格子右下角花上这个6边形。
月经期:当月日历中,实际的月经期,可能跟预测经期重叠,也可能不重叠。如果重叠或者部分重叠。重叠的格子,则显示深粉色的背景色(月经期的背景色)。
目前你选择的日历是Period多选方式,对照美柚的UI ,可以看到这里应该采用单选,选中某个日期,则在当前界面日历的下面呈现可以打卡的项目列表(月经来了,爱爱、心情、白带等等)。
月经来了:这是一个 是/否 这样的一个switch开关,用户点击了选择了**是**,则表示这一天是当月月经开始的第一天,根据用户设置的**经期长度**,自动通过 深粉色背景色填充日历的格子, 在日历上自动多选连续的实际的经期。
用户只要重新设置了**月经来了**,这自动重算当前月日历视图上的实际的月经期。
在MinePage添加一行导航,放在“设置”上面,点击则弹出 经期设置 的界面(使用dialog方式),设置:
经期长度:通过轮播方式选择经期的天数,3,4,5,6,7,8....15 --- 设置您的月经大概维持几天?
周期长度:通过轮播方式选择周期的天数,17,18,......31 --- 两次月经开始日大概间隔多久?
最近一次月经开始时间:这里通过弹出一个日期选择?
有了以上3个数据,就可以根据公式,算出预测经期、排卵期、排卵日!
### 标准计算公式
1. 先算「下次月经来潮日」
本次月经首日 + 平均月经周期天数 = 下次月经首日
2. 排卵日 = 下次月经首日 − 14天
示例:
本次月经7.1,周期30天
下次月经:7.1+30=7.31
排卵日=7.3114=7.17
---
你需要研究一下,怎么在本地的Room数据库存储,经期数据和关联的打卡数据。仔细分析美柚的两个文件、结合你对类似产品功能的设计能力,给出你的业务流程和建议,技术实现方案! 你把你的设计内容写成文档到docs目录