diff --git a/app/water-settings.tsx b/app/water-settings.tsx index fe4e38b..f46afd6 100644 --- a/app/water-settings.tsx +++ b/app/water-settings.tsx @@ -37,7 +37,8 @@ const WaterSettings: React.FC = () => { const [dailyGoal, setDailyGoal] = useState('2000'); const [quickAddAmount, setQuickAddAmount] = useState('250'); - // 编辑弹窗状态 + // 设置弹窗状态 + const [settingsModalVisible, setSettingsModalVisible] = useState(false); const [goalModalVisible, setGoalModalVisible] = useState(false); const [quickAddModalVisible, setQuickAddModalVisible] = useState(false); @@ -49,19 +50,24 @@ const WaterSettings: React.FC = () => { const { waterRecords, dailyWaterGoal, updateWaterGoal, removeWaterRecord } = useWaterDataByDate(selectedDate); - const goalPresets = [1500, 2000, 2500, 3000, 3500, 4000]; - const quickAddPresets = [100, 150, 200, 250, 300, 350, 400, 500]; + // 处理设置按钮点击 + const handleSettingsPress = () => { + setSettingsModalVisible(true); + }; + // 打开饮水目标弹窗时初始化临时值 const openGoalModal = () => { setTempGoal(parseInt(dailyGoal)); + setSettingsModalVisible(false); setGoalModalVisible(true); }; // 打开快速添加弹窗时初始化临时值 const openQuickAddModal = () => { setTempQuickAdd(parseInt(quickAddAmount)); + setSettingsModalVisible(false); setQuickAddModalVisible(true); }; @@ -224,6 +230,15 @@ const WaterSettings: React.FC = () => { // 这里会通过路由自动处理返回 router.back(); }} + right={ + + + + } /> = () => { contentContainerStyle={styles.scrollContent} showsVerticalScrollIndicator={false} > - {/* 第一部分:饮水配置 */} - - 饮水配置 - - {/* 设置目标部分 */} - - - 每日饮水目标 - {dailyGoal}ml - - - - - - - {/* 快速添加默认值设置部分 */} - - - 快速添加默认值 - - {`设置点击右上角"+"按钮时添加的默认饮水量`} - - {quickAddAmount}ml - - - - - - - {/* 第二部分:饮水记录 */} @@ -311,6 +288,52 @@ const WaterSettings: React.FC = () => { + {/* 设置主弹窗 */} + setSettingsModalVisible(false)} + > + setSettingsModalVisible(false)} /> + + + 饮水设置 + + {/* 菜单项 */} + + + + + + + + 每日饮水目标 + {dailyWaterGoal || dailyGoal}ml + + + + + + + + + + + + 快速添加默认值 + + 设置点击"+"按钮时添加的默认饮水量 + + {quickAddAmount}ml + + + + + + + + {/* 饮水目标编辑弹窗 */} = ({ }; + return ( = ({ + ); };