在闹钟功能不变情况喜爱,添加新闹钟添加判断,其他界面删除无用代码 1192/4 1192/head
authorluozheng <1732036298@qq.com>
Tue, 15 Oct 2024 12:08:11 +0000 (20:08 +0800)
committerluozheng <1732036298@qq.com>
Tue, 15 Oct 2024 12:08:11 +0000 (20:08 +0800)
code/sdk/application/wearable/fd230app/nativeui/alarm/include/AlarmPresenter.h
code/sdk/application/wearable/fd230app/nativeui/alarm/include/AlarmSetWeekView.h
code/sdk/application/wearable/fd230app/nativeui/alarm/src/AlarmClockModel.cpp
code/sdk/application/wearable/fd230app/nativeui/alarm/src/AlarmNewTimeView.cpp
code/sdk/application/wearable/fd230app/nativeui/alarm/src/AlarmPresenter.cpp
code/sdk/application/wearable/fd230app/nativeui/alarm/src/AlarmSetWeekView.cpp

index 12906bb..574c999 100644 (file)
@@ -63,8 +63,9 @@ constexpr char* ALARM_NEXT = (char *)"alarmnext";
 constexpr char* ALARM_OK = (char *)"alarmok";\r
 constexpr char* JUDGE_DELETE = (char *)"judgedelete";\r
 constexpr char* JUDGE_TRUE = (char *)"judgetrue";\r
-constexpr char* ADD_BUTTON = (char *)"addbutton";\r
+constexpr char* ADD_BUTTON = (char *)"addbutton"; // 增加闹钟按钮viewId\r
 \r
+//星期设置按钮的viewId周一到周日\r
 constexpr char* MONDAY = (char *)"monday";\r
 constexpr char* TUESDAY = (char *)"tuesday";\r
 constexpr char* WEDNESDAY = (char *)"wednesday";\r
@@ -72,8 +73,9 @@ constexpr char* THURSDAY = (char *)"thursday";
 constexpr char* FRIDAY = (char *)"friday";\r
 constexpr char* SATURDAY = (char *)"saturday";\r
 constexpr char* SUNDAY = (char *)"sunday";\r
-constexpr char* ALARM_WEEK_OK = (char *)"alarmweekok";\r
+constexpr char* ALARM_WEEK_OK = (char *)"alarmweekok"; // 星期设置确认按钮viewId\r
 \r
+// 闹钟开关按钮的viewId\r
 constexpr char* ALARM_STATUS_ONE  = (char *)"alarmstatus0";\r
 constexpr char* ALARM_STATUS_TWO  = (char *)"alarmstatus1";\r
 constexpr char* ALARM_STATUS_THREE  = (char *)"alarmstatus2";\r
@@ -90,11 +92,11 @@ constexpr char* ALARM_CLOCK_SIX = (char *)"alarmclock5";
 \r
 constexpr int16_t SET_SIX = 6;\r
 \r
-constexpr char* ALARM_STATUS[6] = {ALARM_STATUS_ONE, ALARM_STATUS_TWO, ALARM_STATUS_THREE, // 闹钟按钮最大个数为6个\r
+constexpr char* ALARM_STATUS[6] = {ALARM_STATUS_ONE, ALARM_STATUS_TWO, ALARM_STATUS_THREE, // 闹钟开关按钮viewId最大个数为6个\r
     ALARM_STATUS_FOUR, ALARM_STATUS_FIVE, ALARM_STATUS_SIX};\r
 constexpr char* ALARM_CLOCK[6] = {ALARM_CLOCK_ONE, ALARM_CLOCK_TWO, ALARM_CLOCK_THREE, // 闹钟个数最大个数为6个\r
     ALARM_CLOCK_FOUR, ALARM_CLOCK_FIVE, ALARM_CLOCK_SIX};\r
-constexpr char* WEEK_CONTAINER[7] = {SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY}; // 日期按钮最大个数为7个\r
+constexpr char* WEEK_BUTTON_VIEWID[7] = {SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY}; // 星期按钮viewId最大个数为7个\r
 \r
 \r
 constexpr char * ALARM_ITEM_DELETE_00 = (char *)"ALARM_ITEM_DELETE_00";\r
@@ -107,15 +109,18 @@ constexpr char * ALARM_ITEM_DELETE[6] = {ALARM_ITEM_DELETE_00, ALARM_ITEM_DELETE
                                             ALARM_ITEM_DELETE_03, ALARM_ITEM_DELETE_04, ALARM_ITEM_DELETE_05};\r
 \r
 typedef enum {\r
-    MAIN_INTERFACE = 0,\r
-    CHANGE_INTERFACE_CONFIG,\r
-    CHANGE_INTERFACE_SET_TIME,\r
-    CHANGE_INTERFACE_SET_WEEK,\r
-    CHANGE_INTERFACE_JUDGE,\r
-    CHANGE_INTERFACE_NEW_TIME,\r
+    MAIN_INTERFACE = 0,        // 主界面\r
+    CHANGE_INTERFACE_CONFIG,   // 闹钟编辑页面[包括更改时间和更改星期]\r
+    CHANGE_INTERFACE_SET_TIME, // 时间设置页面\r
+    CHANGE_INTERFACE_SET_WEEK, //星期设置页面\r
+    CHANGE_INTERFACE_JUDGE,    // 确认删除闹钟页面\r
+    CHANGE_INTERFACE_NEW_TIME, // 新建闹钟的[时间设置]页面\r
     CHANGE_INTERFACE_MAXCLOCK,\r
 } InterfacesId;\r
 \r
+constexpr int16_t NEW_TIME_LISTENER = 0; // 新建闹钟的[时间设置]标志\r
+constexpr int16_t SET_TIME_LISTENER = 1; // 更新已存在闹钟的[星期设置]标志\r
+\r
 class AlarmStatusBtnChangeListener : public OHOS::UICheckBox::OnChangeListener {\r
 public:\r
     explicit AlarmStatusBtnChangeListener(UIView *uiView)\r
@@ -181,7 +186,7 @@ public:
 private:\r
     uint32_t timeHour{0};\r
     uint32_t timeMin{0};\r
-    uint16_t setListener;\r
+    uint16_t setListener; // 新建闹钟还是修改闹钟的标志\r
     uint16_t alarmListener{0};//闹钟编号\r
     uint16_t clockQty{0};\r
     int16_t interListener;\r
index aae3aa8..cbbd7e8 100644 (file)
@@ -1,8 +1,9 @@
 /*\r
- * Copyright (c) CompanyNameMagicTag 2021-2021. All rights reserved.\r
- * Description: Alarm\r
- * Author:\r
- * Create: 2021-09-11\r
+ * @Author: luozheng 1732036298@qq.com\r
+ * @Date: 2024-08-29 10:39:02\r
+ * @LastEditors: luozheng 1732036298@qq.com\r
+ * @LastEditTime: 2024-10-12 19:14:30\r
+ * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/alarm/include/AlarmSetWeekView.h\r
  */\r
 \r
 #ifndef ALARM_SET_WEEK_VIEW\r
@@ -22,6 +23,8 @@
 #include "AlarmPresenter.h"\r
 #include "AlarmClockModel.h"\r
 \r
+#define WEEK_NUM 7 // 星期一共有7天\r
+\r
 namespace OHOS {\r
 class AlarmSetWeekView {\r
 public:\r
@@ -35,7 +38,7 @@ private:
     UIScrollView *group{nullptr};\r
     UILabelButtonExt *weekImage{nullptr};\r
     UILabelExt *labelRespeat{nullptr};\r
-    UILabelButton *buttonWeek[7]{nullptr}; // 星期一共有7天,因此设置了七个星期的按钮\r
+    UILabelButton *buttonWeek[WEEK_NUM]{nullptr}; // 星期一共有7天,因此设置了七个星期的按钮\r
     void CreateWeekButton1(void);\r
     void CreateWeekButton2(void);\r
     void SetLabelButton(void);\r
index 8b59568..8b3af69 100644 (file)
@@ -658,6 +658,24 @@ void AlarmClockModel::DelAlarmDelay(int16_t num)
 void AlarmClockModel::SetAlarmInfo(uint32_t time_hour, uint32_t time_min, uint8_t week, uint16_t alarmListener,uint16_t setListener)
 {
     WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AlarmClockModel::SetAlarmInfo!");
+    // 检查时间参数是否合法
+    if (time_hour < 0 || time_hour > 23 || time_min < 0 || time_min > 59)
+    {
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Invalid time parameters!");
+        return;
+    }
+    // 检查 alarmListener 是否在合理范围内
+    if (alarmListener >= ALARM_CLOCK_MAX || alarmListener < 0)
+    {
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Invalid alarmListener value!");
+        return;
+    }
+    // 检查 setListener 是否合法
+    if (setListener!= NEW_TIME_LISTENER && setListener!= SET_TIME_LISTENER) // NEW_TIME_LISTENER:0 表示新建闹钟,SET_TIME_LISTENER:1 表示修改闹钟
+    {
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Invalid setListener value!");
+        return;
+    }
     if (currentAlarm[alarmListener] == nullptr || (currentAlarm[alarmListener]->alarmType == TYPE_INVALID_ALARM_CLOCK &&
         currentAlarm[alarmListener] != nullptr)) {
         currentAlarm[alarmListener] = new AlarmClockInfo();
@@ -680,7 +698,7 @@ void AlarmClockModel::SetAlarmInfo(uint32_t time_hour, uint32_t time_min, uint8_
     }
     WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AlarmClockModel::NewAlarmTime clock name = %s, id = %u",
         currentAlarm[alarmListener]->alarmClockName, currentAlarm[alarmListener]->alarmClockId);
-    if (setListener == 0) { //表示新建闹钟
+    if (setListener == NEW_TIME_LISTENER) { //表示新建闹钟
         WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AlarmClockModel::SetAlarmWeek new time!");
         int ret = AddAlarmClock(currentAlarm[alarmListener]);
         if (ret != 0) {
index 3f2faa6..983e796 100644 (file)
@@ -186,7 +186,7 @@ namespace OHOS
 \r
     void AlarmNewTimeView::RefreshNewTime(void)\r
     {\r
-        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmNewTimeView::RefreshStep");\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmNewTimeView::RefreshNewTime");\r
         struct tm local_time;\r
         time_t seconds = time(nullptr);\r
         if (localtime_r(&seconds, &local_time) == nullptr)\r
@@ -198,9 +198,9 @@ namespace OHOS
         std::ostringstream ostMin;\r
         ostrHour << local_time.tm_hour;\r
         ostMin << local_time.tm_min;\r
-        std::string weekStr = ostrHour.str() + ":" + ostMin.str();\r
-        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "time = %s!", weekStr.c_str());\r
-        picker->SetSelected(weekStr.c_str()); // 添加的时间默认初始时间为0点\r
+        std::string timeStr = ostrHour.str() + ":" + ostMin.str();\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "time = %s!", timeStr.c_str());\r
+        picker->SetSelected(timeStr.c_str());\r
         uint32_t timeHour = stoi(ostrHour.str());\r
         uint32_t timeMin = stoi(ostMin.str());\r
         AlarmPresenter::GetInstance()->OnTimePickerInaction(timeHour, timeMin);\r
index 6e7abde..3cc0073 100644 (file)
@@ -20,8 +20,6 @@ static AlarmPresenter *g_pAlarmPresenter = nullptr;
 constexpr int16_t CLOSE_SWITCHES = 0;\r
 constexpr int16_t OPEN_SWITCHES = 1;\r
 constexpr int16_t SET_ZERO = 0;\r
-constexpr int16_t NEW_TIME_LISTENER = 0;\r
-constexpr int16_t SET_TIME_LISTENER = 1;\r
 constexpr uint16_t THE_FIRST_ALARM = 0;\r
 constexpr uint16_t SECOND_ALARM = 1;\r
 constexpr uint16_t THIRD_ALARM = 2;\r
@@ -37,8 +35,8 @@ constexpr uint8_t WEEK_BIT3 = 3;
 constexpr uint8_t WEEK_BIT2 = 2;\r
 constexpr uint8_t WEEK_BIT1 = 1;\r
 constexpr uint8_t WEEK_BIT0 = 0;\r
-constexpr uint16_t ALARM_MAX_NUM = 5; // 4;\r
-constexpr int32_t BUTTON_MAX_NUM = 7;\r
+constexpr uint16_t ALARM_MAX_NUM = 5; // 最大闹钟数\r
+constexpr int32_t WEEK_BUTTON_MAX_NUM = 7; // 星期按钮的最大个数\r
 constexpr uint16_t CLOCK_NUM = 5;\r
 constexpr uint8_t CANCEL_DATA = 0;\r
 constexpr uint8_t SELECT_DATA = 1;\r
@@ -267,6 +265,7 @@ void AlarmPresenter::ClickAlarmClock(uint16_t num)
     AlarmConfigView::GetInstance()->RefreshConfig(clockTime, clockWeek, num);\r
 }\r
 \r
+// 处理闹钟星期设置确认按钮的点击事件\r
 void AlarmPresenter::ClickAlarmWeekOk(uint16_t num)\r
 {\r
     WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AlarmPresenter ALARM_WEEK_OK");\r
@@ -279,7 +278,7 @@ void AlarmPresenter::ClickAlarmWeekOk(uint16_t num)
     if (setListener == SET_TIME_LISTENER) {\r
         WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "ClickAlarmWeekOk set time!");\r
         if (!(AlarmClockModel::GetInstance()->GetClockTime(alarmListener, &clockTime))) {\r
-            WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AlarmPresenter ClickAlarmWeekOk error");\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmPresenter ClickAlarmWeekOk error");\r
             return;\r
         }\r
         WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "ClickAlarmWeekOk  time = %d", clockTime);\r
@@ -292,13 +291,12 @@ void AlarmPresenter::ClickAlarmWeekOk(uint16_t num)
         }\r
         AlarmClockModel::GetInstance()->ButtonStatusRing(alarmListener, true);\r
         MainAlarmView::GetInstance()->RefreshAlarm();\r
-        MainAlarmView::GetInstance()->ChangeView(CHANGE_INTERFACE_SET_WEEK, CHANGE_INTERFACE_CONFIG);\r
+        MainAlarmView::GetInstance()->ChangeView(CHANGE_INTERFACE_SET_WEEK, CHANGE_INTERFACE_CONFIG); // 跳转到闹钟配置界面\r
     } else if (setListener == NEW_TIME_LISTENER) {\r
         WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "ClickAlarmWeekOk new time!");\r
-        // clockQty++;\r
         alarmListener = clockQty;\r
         clockQty++;\r
-        WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "******************ClickAlarmWeekOk  alarmListener = %d***************", alarmListener);\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "******************ClickAlarmWeekOk  alarmListener = %d***************", alarmListener);\r
         AlarmClockModel::GetInstance()->SetSerialAdd();\r
         AlarmClockModel::GetInstance()->SetAlarmInfo(timeHour, timeMin, clockWeek, alarmListener, setListener);\r
         if (!(AlarmClockModel::GetInstance()->GetClockTime(alarmListener, &clockTime))) {\r
@@ -312,15 +310,20 @@ void AlarmPresenter::ClickAlarmWeekOk(uint16_t num)
             return;\r
         }\r
         MainAlarmView::GetInstance()->RefreshAlarm();\r
-        MainAlarmView::GetInstance()->ChangeView(CHANGE_INTERFACE_SET_WEEK, MAIN_INTERFACE);\r
+        MainAlarmView::GetInstance()->ChangeView(CHANGE_INTERFACE_SET_WEEK, MAIN_INTERFACE); // 跳转到闹钟主界面\r
     }\r
 }\r
 \r
+// 处理闹钟新建按钮的点击事件\r
 void AlarmPresenter::ClickAlarmNewTime(uint16_t num)\r
 {\r
     WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AlarmPresenter ALARM_NEW_TIME");\r
+    if (MainAlarmView::GetInstance() == nullptr) {\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmPresenter::ClickAlarmNewTime new MainAlarmView::GetInstance() error");\r
+        return;\r
+    }\r
     clockQty = AlarmClockModel::GetInstance()->GetAlarmNum();\r
-    WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AlarmPresenter alarmNumbel = %u", clockQty);\r
+    WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmPresenter alarmNumbel = %u", clockQty);\r
     UNUSED(num);\r
     if (clockQty >= ALARM_MAX_NUM) {\r
         WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AlarmPresenter new alarm max");\r
@@ -330,11 +333,7 @@ void AlarmPresenter::ClickAlarmNewTime(uint16_t num)
     setListener = NEW_TIME_LISTENER;\r
     timeHour = 0;\r
     timeMin = 0;\r
-    if (MainAlarmView::GetInstance() == nullptr) {\r
-        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmPresenter::ClickAlarmNewTime new MainAlarmView::GetInstance() error");\r
-        return;\r
-    }\r
-    MainAlarmView::GetInstance()->ChangeView(MAIN_INTERFACE, CHANGE_INTERFACE_NEW_TIME);\r
+    MainAlarmView::GetInstance()->ChangeView(MAIN_INTERFACE, CHANGE_INTERFACE_NEW_TIME); // 跳转到新建闹钟时间设置界面\r
     if (AlarmNewTimeView::GetInstance() == nullptr) {\r
         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmPresenter::ClickAlarmNewTime new AlarmNewTimeView::GetInstance() error");\r
         return;\r
@@ -342,11 +341,13 @@ void AlarmPresenter::ClickAlarmNewTime(uint16_t num)
     AlarmNewTimeView::GetInstance()->RefreshNewTime();\r
 }\r
 \r
+// 新建闹钟时:时间设置页面的下一步按钮点击事件处理函数\r
+\r
 void AlarmPresenter::ClickAlarmNext(uint16_t num)\r
 {\r
     WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AlarmPresenter ALARM_NEXT");\r
     UNUSED(num);\r
-    for (int i = 0; i < BUTTON_MAX_NUM; i++) {\r
+    for (int i = 0; i < WEEK_BUTTON_MAX_NUM; i++) {\r
         alarmWeek[i] = 0;\r
         WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "alarmWeek[%d] = %u", i, alarmWeek[i]);\r
     }\r
@@ -355,11 +356,7 @@ void AlarmPresenter::ClickAlarmNext(uint16_t num)
         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmPresenter::ClickAlarmNext new MainAlarmView::GetInstance() error");\r
         return;\r
     }\r
-    MainAlarmView::GetInstance()->ChangeView(CHANGE_INTERFACE_NEW_TIME, CHANGE_INTERFACE_SET_WEEK);\r
-    if (AlarmNewTimeView::GetInstance() == nullptr) {\r
-        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmPresenter::ClickAlarmNext new AlarmNewTimeView::GetInstance() error");\r
-        return;\r
-    }\r
+    MainAlarmView::GetInstance()->ChangeView(CHANGE_INTERFACE_NEW_TIME, CHANGE_INTERFACE_SET_WEEK);// 跳转到星期设置界面\r
     if (AlarmSetWeekView::GetInstance() == nullptr) {\r
         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmPresenter::ClickAlarmNext new AlarmSetWeekView::GetInstance() error");\r
         return;\r
@@ -435,23 +432,17 @@ bool AlarmPresenter::ClickFuncId(const char *buttonName)
 \r
 bool AlarmPresenter::ClickFuncView(UIView &view)\r
 {\r
-    WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "ClickFuncView view = %s", view.GetViewId());\r
-    for (int num = 0; num < BUTTON_MAX_NUM; num++) {\r
-        if (strcmp(view.GetViewId(), WEEK_CONTAINER[num]) == 0) {\r
+    WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ClickFuncView view = %s", view.GetViewId());\r
+    for (int num = 0; num < WEEK_BUTTON_MAX_NUM; num++) {\r
+        if (strcmp(view.GetViewId(), WEEK_BUTTON_VIEWID[num]) == 0) {\r
             alarmWeek[num] = alarmWeek[num] ? CANCEL_DATA: SELECT_DATA;\r
-            if (alarmWeek[num] == CANCEL_DATA) {\r
+            if (alarmWeek[num] == CANCEL_DATA) { // 取消选中\r
                 WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "alarmWeek[num] = %u", alarmWeek[num]);\r
-                // view.SetStyle(STYLE_BACKGROUND_COLOR, Color::Black().full);\r
-                // dynamic_cast<UIButton &>(view).SetStyleForState(STYLE_BACKGROUND_COLOR,\r
-                //                                                 Color::Black().full, UIButton::PRESSED);\r
                 view.SetStyle(STYLE_BACKGROUND_COLOR, Color::GetColorFromRGB(0x19, 0x19, 0x19).full);\r
                 dynamic_cast<UIButton &>(view).SetStyleForState(STYLE_BACKGROUND_COLOR,\r
                                                                 Color::GetColorFromRGB(0x19, 0x19, 0x19).full, UIButton::PRESSED);                \r
-            } else if (alarmWeek[num] == SELECT_DATA) {\r
+            } else if (alarmWeek[num] == SELECT_DATA) { // 选中\r
                 WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "alarmWeek[num] = %u", alarmWeek[num]);\r
-                // view.SetStyle(STYLE_BACKGROUND_COLOR, Color::GetColorFromRGB(0x6c, 0xB8, 0xFD).full);\r
-                // dynamic_cast<UIButton &>(view).SetStyleForState(STYLE_BACKGROUND_COLOR,\r
-                //                                                 Color::GetColorFromRGB(0x6c, 0xB8, 0xFD).full, UIButton::PRESSED);\r
                 view.SetStyle(STYLE_BACKGROUND_COLOR, Color::GetColorFromRGB(0x4f, 0xc3, 0x4c).full);\r
                 dynamic_cast<UIButton &>(view).SetStyleForState(STYLE_BACKGROUND_COLOR,\r
                                                                 Color::GetColorFromRGB(0x4f, 0xc3, 0x4c).full, UIButton::PRESSED);                                    \r
@@ -478,14 +469,14 @@ bool AlarmPresenter::OnKeyAct(UIView &view, const KeyEvent &event)
 \r
 void AlarmPresenter::ClickDeleteButtonAlarmClockDelete(uint16_t num)\r
 {\r
-    // WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[@CHENG][%d]:%d", __LINE__, num);\r
+    WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "[@CHENG][%d]:%d", __LINE__, num);\r
+    if (MainAlarmView::GetInstance() == nullptr) {\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmPresenter::ClickDeleteButtonAlarmClockDelete error");\r
+        return;\r
+    }\r
     UNUSED(num);\r
     alarmListener = num;\r
     MainAlarmView::GetInstance()->ChangeView(MAIN_INTERFACE, CHANGE_INTERFACE_JUDGE);\r
-    // if (MainAlarmView::GetInstance() == nullptr) {\r
-    //     WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmPresenter::ClickDeleteButtonAlarmClockDelete error");\r
-    //     return;\r
-    // }\r
 }\r
 \r
 static const AlarmPresentMapper1 DeleteButtonPresentMapper[] = \r
@@ -505,7 +496,7 @@ bool AlarmPresenter::OnClick(UIView &view, const ClickEvent &event)
     uint16_t num;\r
     for (num = 0; num < CLOCK_NUM; num++)\r
     {\r
-        if (0 == strcmp(view.GetViewId(), ALARM_ITEM_DELETE[num]))\r
+        if (0 == strcmp(view.GetViewId(), ALARM_ITEM_DELETE[num])) // 闹钟删除按钮\r
         {\r
             WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[@CHENG][%d]:%d", __LINE__, num);\r
             (this->*(DeleteButtonPresentMapper[num].func))(num);\r
index 4146746..6d19f2a 100644 (file)
 #include "ui_resource_string.h"\r
 #include "ConfigModel.h"\r
 namespace OHOS {\r
-// #define MON "星期一"\r
-// #define TUE "星期二"\r
-// #define WED "星期三"\r
-// #define THUR "星期四"\r
-// #define FRI "星期五"\r
-// #define SAT "星期六"\r
-// #define SUN "星期天"\r
-#define MON "一"\r
-#define TUE "二"\r
-#define WED "三"\r
-#define THUR "四"\r
-#define FRI "五"\r
-#define SAT "六"\r
-#define SUN "日"\r
-#define MON_EN "Mon"\r
-#define TUE_EN "Tue"\r
-#define WED_EN "Wed"\r
-#define THUR_EN "Thu"\r
-#define FRI_EN "Fri"\r
-#define SAT_EN "Sat"\r
-#define SUN_EN "Sun"\r
-#define RESPEAT "重复"\r
-#define SURE "确认"\r
-\r
-#define MONDAY "monday"\r
-#define TUESDAY "tuesday"\r
-#define WEDNESDAY "wednesday"\r
-#define THURSDAY "thursday"\r
-#define FRIDAY "friday"\r
-#define SATURDAY "saturday"\r
-#define SUNDAY "sunday"\r
-\r
 static AlarmSetWeekView *g_pAlarmSetWeekView = nullptr;\r
 constexpr int16_t CONTAINER_X = 0;\r
 constexpr int16_t CONTAINER_Y = 0;\r
-constexpr int16_t DEFAULT_FONT = 40;\r
-constexpr int16_t REBOUND_SIZE = 50;\r
-constexpr int16_t BORDER_WIDTH = 20;\r
-constexpr int16_t SET_ZERO = 0;\r
-constexpr int16_t TITLE_X = 185;\r
-constexpr int16_t TITLE_Y = 30;\r
-constexpr int16_t LABEL_POSITION_SIZE = 150;\r
 constexpr int16_t VIEW_BORDER_SIZE = 2;\r
-constexpr int16_t BORDER_RADIUS_SIZE = 200;\r
-constexpr int16_t VIEW_BUTTON_X = 100;\r
-constexpr int16_t VIEW_BUTTON_Y = 70;\r
-constexpr int16_t BUTTON_FONT_SIZE = 18;\r
-constexpr int16_t TIME_LABEL_BUTTON_X = 63;\r
-constexpr int16_t TIME_LABEL_BUTTON_Y = 360;\r
-constexpr int16_t BUTTON_WIDHT3 = 320;\r
-constexpr int16_t BUTTON_HEIGHT3 = 101;\r
-constexpr int16_t LABEL_WEEK_FONT = 40;\r
-constexpr int16_t BUTTON_WIDHT = 80; // 100;\r
-constexpr int16_t BUTTON_HEIGHT = 80; // 60;\r
-constexpr int16_t BUTTON_FONT = 20;\r
-constexpr int16_t VIEW_POSITION_X = 27; // 60;\r
-constexpr int16_t VIEW_POSITION_X2 = 83; // 12;\r
-constexpr int16_t WEEK_Y1 = 135; // 130;\r
-constexpr int16_t WEEK_Y2 = 245; // 210;\r
-constexpr int16_t WEEK_GAP_X = 110; // 112;\r
-constexpr int16_t BUTTON_STYLE_BORDER_RADIUS_VALUE = 100; // 30;\r
+constexpr int16_t BUTTON_WIDHT = 80; // 80\r
+constexpr int16_t BUTTON_HEIGHT = 80; // 80\r
+constexpr int16_t VIEW_POSITION_X = 27; //27\r
+constexpr int16_t VIEW_POSITION_X2 = 83;// 83\r
+constexpr int16_t WEEK_Y1 = 135;\r
+constexpr int16_t WEEK_Y2 = 245;\r
+constexpr int16_t WEEK_GAP_X = 110;// 星期按钮间的间隔 \r
+constexpr int16_t BUTTON_STYLE_BORDER_RADIUS_VALUE = 100; \r
 constexpr int16_t FONT_DEFAULT_SIZE = 30;\r
 constexpr int16_t WEEK_MON = 1;\r
 constexpr int16_t WEEK_TUE = 2;\r
@@ -81,8 +32,8 @@ constexpr int16_t WEEK_FRI = 5;
 constexpr int16_t WEEK_SAT = 6;\r
 constexpr int16_t WEEK_SUN = 0;\r
 \r
-#define DEFAULT_BG_COLOR (Color::GetColorFromRGB(0x19, 0x19, 0x19))\r
-#define SELECTED_BG_COLOR (Color::GetColorFromRGB(0x4f, 0xc3, 0x4c))\r
+#define DEFAULT_BG_COLOR (Color::GetColorFromRGB(0x19, 0x19, 0x19))  // 默认背景色\r
+#define SELECTED_BG_COLOR (Color::GetColorFromRGB(0x4f, 0xc3, 0x4c)) // 选中背景色\r
 \r
 \r
 AlarmSetWeekView::AlarmSetWeekView()\r
@@ -106,7 +57,7 @@ AlarmSetWeekView::~AlarmSetWeekView()
             delete weekImage;\r
             weekImage = nullptr;\r
         }\r
-        for (int16_t alarmNum = 0; alarmNum < 7; alarmNum++) {\r
+        for (int16_t alarmNum = 0; alarmNum < WEEK_NUM; alarmNum++) {\r
             if(buttonWeek[alarmNum])\r
             {\r
                 delete buttonWeek[alarmNum];\r
@@ -128,6 +79,7 @@ AlarmSetWeekView *AlarmSetWeekView::GetInstance(void)
 UILabelButtonExt *AlarmSetWeekView::CreateUILabelButton(const char *buttonText1,const char *buttonText2, int16_t x, int16_t y)\r
 {\r
     if (buttonText1 == nullptr || buttonText2 == nullptr) {\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: buttonText1 or buttonText2 is null");\r
         return nullptr;\r
     }\r
 \r
@@ -137,11 +89,11 @@ UILabelButtonExt *AlarmSetWeekView::CreateUILabelButton(const char *buttonText1,
         return nullptr;\r
     }\r
     int language = ConfigModel::GetInstance()->GetLanguage();\r
-    if(language == 0)\r
+    if(language == 0) // 中文\r
     {\r
         labelButton->SetText(buttonText1);\r
     }\r
-    else\r
+    else \r
     {\r
         labelButton->SetText(buttonText2);\r
     }\r
@@ -150,25 +102,17 @@ UILabelButtonExt *AlarmSetWeekView::CreateUILabelButton(const char *buttonText1,
     labelButton->SetStyleForState(STYLE_BORDER_RADIUS, BUTTON_STYLE_BORDER_RADIUS_VALUE, UIButton::PRESSED);\r
     labelButton->SetStyleForState(STYLE_BORDER_RADIUS, BUTTON_STYLE_BORDER_RADIUS_VALUE, UIButton::INACTIVE);\r
     labelButton->SetStyleForState(STYLE_BORDER_RADIUS, BUTTON_STYLE_BORDER_RADIUS_VALUE, UIButton::RELEASED);\r
-    // labelButton->SetStyleForState(STYLE_BACKGROUND_COLOR, Color::Black().full, UIButton::RELEASED);\r
-    // labelButton->SetStyleForState(STYLE_BACKGROUND_COLOR, Color::Black().full, UIButton::PRESSED);\r
-    // labelButton->SetStyleForState(STYLE_BACKGROUND_COLOR, Color::Black().full, UIButton::INACTIVE);\r
     labelButton->SetStyleForState(STYLE_BACKGROUND_COLOR, DEFAULT_BG_COLOR.full, UIButton::RELEASED);\r
     labelButton->SetStyleForState(STYLE_BACKGROUND_COLOR, DEFAULT_BG_COLOR.full, UIButton::PRESSED);\r
     labelButton->SetStyleForState(STYLE_BACKGROUND_COLOR, DEFAULT_BG_COLOR.full, UIButton::INACTIVE);\r
     labelButton->SetStyleForState(STYLE_BORDER_WIDTH, VIEW_BORDER_SIZE, UIButton::RELEASED);\r
     labelButton->SetStyleForState(STYLE_BORDER_WIDTH, VIEW_BORDER_SIZE, UIButton::PRESSED);\r
     labelButton->SetStyleForState(STYLE_BORDER_WIDTH, VIEW_BORDER_SIZE, UIButton::INACTIVE);\r
-    // labelButton->SetStyleForState(STYLE_BORDER_COLOR, Color::White().full, UIButton::RELEASED);\r
-    // labelButton->SetStyleForState(STYLE_BORDER_COLOR, Color::White().full, UIButton::PRESSED);\r
-    // labelButton->SetStyleForState(STYLE_BORDER_COLOR, Color::White().full, UIButton::INACTIVE);\r
     labelButton->SetStyleForState(STYLE_BORDER_COLOR, Color::Black().full, UIButton::RELEASED);\r
     labelButton->SetStyleForState(STYLE_BORDER_COLOR, Color::Black().full, UIButton::PRESSED);\r
     labelButton->SetStyleForState(STYLE_BORDER_COLOR, Color::Black().full, UIButton::INACTIVE);\r
-    // labelButton->SetStyle(STYLE_BACKGROUND_COLOR, Color::GetColorFromRGB(0x6c, 0xB8, 0xFD).full);\r
     labelButton->SetStyle(STYLE_BACKGROUND_COLOR, DEFAULT_BG_COLOR.full);\r
     labelButton->SetStyle(STYLE_BORDER_WIDTH, VIEW_BORDER_SIZE);\r
-    // labelButton->SetStyle(STYLE_BORDER_COLOR, Color::White().full);\r
     labelButton->SetStyle(STYLE_BORDER_COLOR, Color::Black().full);\r
     labelButton->Resize(BUTTON_WIDHT, BUTTON_HEIGHT);\r
 \r
@@ -177,10 +121,10 @@ UILabelButtonExt *AlarmSetWeekView::CreateUILabelButton(const char *buttonText1,
 \r
 void AlarmSetWeekView::CreateWeekButton1(void)\r
 {\r
-    int viewPositionX = VIEW_POSITION_X;   // 60 150\r
+    int viewPositionX = VIEW_POSITION_X;\r
     UIView::OnClickListener *clickListener = (UIView::OnClickListener *)OHOS::AlarmPresenter::GetInstance();\r
 \r
-    buttonWeek[WEEK_SUN] = CreateUILabelButton(SUN,SUN_EN, viewPositionX, WEEK_Y1);\r
+    buttonWeek[WEEK_SUN] = CreateUILabelButton(SUN_DAY,SUN_DAY_EN, viewPositionX, WEEK_Y1);\r
     if (buttonWeek[WEEK_SUN] == nullptr) {\r
         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new buttonSun fail");\r
         return;\r
@@ -190,7 +134,7 @@ void AlarmSetWeekView::CreateWeekButton1(void)
     buttonWeek[WEEK_SUN]->SetViewId(SUNDAY);\r
     viewPositionX += WEEK_GAP_X;\r
 \r
-    buttonWeek[WEEK_MON] = CreateUILabelButton(MON,MON_EN, viewPositionX, WEEK_Y1);\r
+    buttonWeek[WEEK_MON] = CreateUILabelButton(MON_DAY,MON_DAY_EN, viewPositionX, WEEK_Y1);\r
     if (buttonWeek[WEEK_MON] == nullptr) {\r
         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new buttonMon fail");\r
         return;\r
@@ -200,7 +144,7 @@ void AlarmSetWeekView::CreateWeekButton1(void)
     buttonWeek[WEEK_MON]->SetViewId(MONDAY);\r
     viewPositionX += WEEK_GAP_X;\r
 \r
-    buttonWeek[WEEK_TUE] = CreateUILabelButton(TUE,TUE_EN, viewPositionX, WEEK_Y1);\r
+    buttonWeek[WEEK_TUE] = CreateUILabelButton(TUE_DAY,TUE_DAY_EN, viewPositionX, WEEK_Y1);\r
     if (buttonWeek[WEEK_TUE] == nullptr) {\r
         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new buttonTue fail");\r
         return;\r
@@ -210,7 +154,7 @@ void AlarmSetWeekView::CreateWeekButton1(void)
     buttonWeek[WEEK_TUE]->SetViewId(TUESDAY);\r
     viewPositionX += WEEK_GAP_X;\r
 \r
-    buttonWeek[WEEK_WED] = CreateUILabelButton(WED,WED_EN, viewPositionX, WEEK_Y1);\r
+    buttonWeek[WEEK_WED] = CreateUILabelButton(WED_DAY,WED_DAY_EN, viewPositionX, WEEK_Y1);\r
     if (buttonWeek[WEEK_WED] == nullptr) {\r
         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new buttonWed fail");\r
         return;\r
@@ -222,10 +166,10 @@ void AlarmSetWeekView::CreateWeekButton1(void)
 \r
 void AlarmSetWeekView::CreateWeekButton2(void)\r
 {\r
-    int viewPositionX2 = VIEW_POSITION_X2; // 12 210\r
+    int viewPositionX2 = VIEW_POSITION_X2;\r
     UIView::OnClickListener *clickListener = (UIView::OnClickListener *)OHOS::AlarmPresenter::GetInstance();\r
 \r
-    buttonWeek[WEEK_THUR] = CreateUILabelButton(THUR,THUR_EN, viewPositionX2, WEEK_Y2);\r
+    buttonWeek[WEEK_THUR] = CreateUILabelButton(THUR_DAY,THUR_DAY_EN, viewPositionX2, WEEK_Y2);\r
     if (buttonWeek[WEEK_THUR] == nullptr) {\r
         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new buttonThur fail");\r
         return;\r
@@ -235,7 +179,7 @@ void AlarmSetWeekView::CreateWeekButton2(void)
     buttonWeek[WEEK_THUR]->SetViewId(THURSDAY);\r
     viewPositionX2 += WEEK_GAP_X;\r
 \r
-    buttonWeek[WEEK_FRI] = CreateUILabelButton(FRI,FRI_EN, viewPositionX2, WEEK_Y2);\r
+    buttonWeek[WEEK_FRI] = CreateUILabelButton(FRI_DAY,FRI_DAY_EN, viewPositionX2, WEEK_Y2);\r
     if (buttonWeek[WEEK_FRI] == nullptr) {\r
         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new buttonFri fail");\r
         return;\r
@@ -245,7 +189,7 @@ void AlarmSetWeekView::CreateWeekButton2(void)
     buttonWeek[WEEK_FRI]->SetViewId(FRIDAY);\r
     viewPositionX2 += WEEK_GAP_X;\r
 \r
-    buttonWeek[WEEK_SAT] = CreateUILabelButton(SAT,SAT_EN, viewPositionX2, WEEK_Y2);\r
+    buttonWeek[WEEK_SAT] = CreateUILabelButton(SAT_DAY,SAT_DAY_EN, viewPositionX2, WEEK_Y2);\r
     if (buttonWeek[WEEK_SAT] == nullptr) {\r
         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new buttonSat fail");\r
         return;\r
@@ -255,14 +199,6 @@ void AlarmSetWeekView::CreateWeekButton2(void)
     buttonWeek[WEEK_SAT]->SetViewId(SATURDAY);\r
     viewPositionX2 += WEEK_GAP_X;\r
 \r
-    // buttonWeek[WEEK_SUN] = CreateUILabelButton(SUN, viewPositionX2, WEEK_Y2);\r
-    // if (buttonWeek[WEEK_SUN] == nullptr) {\r
-    //     WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new buttonSun fail");\r
-    //     return;\r
-    // }\r
-    // group->Add(buttonWeek[WEEK_SUN]);\r
-    // buttonWeek[WEEK_SUN]->SetOnClickListener(clickListener);\r
-    // buttonWeek[WEEK_SUN]->SetViewId(SUNDAY);\r
 }\r
 \r
 void AlarmSetWeekView::SetLabelButton(void)\r
@@ -328,6 +264,7 @@ UIScrollView *AlarmSetWeekView::InitSetWeekView()
     return group;\r
 }\r
 \r
+//该函数用于设置AlarmSetWeekView中周一到周日按钮的背景颜色\r
 void AlarmSetWeekView::RefreshSetWeek1(void)\r
 {\r
     WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView::RefreshStep1");\r
@@ -335,8 +272,6 @@ void AlarmSetWeekView::RefreshSetWeek1(void)
         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView::RefreshStep1 buttonMon nullptr error!");\r
         return;\r
     }\r
-    // buttonWeek[WEEK_MON]->SetStyle(STYLE_BACKGROUND_COLOR, Color::Black().full);\r
-    // buttonWeek[WEEK_MON]->SetStyleForState(STYLE_BACKGROUND_COLOR, Color::Black().full, UIButton::PRESSED);\r
     buttonWeek[WEEK_MON]->SetStyle(STYLE_BACKGROUND_COLOR, DEFAULT_BG_COLOR.full);\r
     buttonWeek[WEEK_MON]->SetStyleForState(STYLE_BACKGROUND_COLOR, DEFAULT_BG_COLOR.full, UIButton::PRESSED);\r
     if (buttonWeek[WEEK_TUE] == nullptr) {\r
@@ -377,9 +312,10 @@ void AlarmSetWeekView::RefreshSetWeek1(void)
     buttonWeek[WEEK_SUN]->SetStyleForState(STYLE_BACKGROUND_COLOR, DEFAULT_BG_COLOR.full, UIButton::PRESSED);\r
 }\r
 \r
+//该函数用于设置AlarmSetWeekView中周一到周日按钮的背景颜色\r
 void AlarmSetWeekView::RefreshSetWeek2(uint8_t week)\r
 {\r
-    for (int16_t alarmNum = 0; alarmNum < 7; alarmNum++) {\r
+    for (int16_t alarmNum = 0; alarmNum < WEEK_NUM; alarmNum++) {\r
         if (buttonWeek[alarmNum] == nullptr) {\r
             WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView::RefreshStep2 week[%d] nullptr error!", alarmNum);\r
             return;\r