合并主界面UI
authorCaisking <Casiking@zhihuishixun.com>
Fri, 25 Apr 2025 10:13:51 +0000 (18:13 +0800)
committerCaisking <Casiking@zhihuishixun.com>
Fri, 25 Apr 2025 10:13:51 +0000 (18:13 +0800)
code/sdk/application/wearable/fd230/nativeapp/nativeui/main/include/MainViewSample.h
code/sdk/application/wearable/fd230/nativeapp/nativeui/main/src/MainModel.cpp
code/sdk/application/wearable/fd230/nativeapp/nativeui/main/src/MainPresenterSample.cpp
code/sdk/application/wearable/fd230/nativeapp/nativeui/main/src/MainViewSample.cpp

index 3442b80..80269cf 100644 (file)
 
 #include "SetCardModel.h"
 #include "heart_blood/BloodCardView.h"
-// #include "traing/training_card/include/Training_CardView.h"
+#include "traing/training_card/include/Training_CardView.h"
 // #include "ApplistCardView.h"
 #include "weather/include/WeatherControlView.h"
 #include "goal/include/goalControlView.h"
 
 #include "message/include/MessageControlView.h"
-// #include "sleep/include/SleepCardView.h"
+#include "sleep/include/SleepCardView.h"
 #include "set_card/include/SetMainView.h"
 #include "heartrate/include/HeartRateCardView.h"
 namespace OHOS
@@ -109,8 +109,8 @@ namespace OHOS
 
         HeartRateCardView *heartRateView{nullptr};
         BloodCardView *bloodView{nullptr};
-        // SleepCardView *sleepView{nullptr};
-        // Training_CardView *traingView{nullptr};
+        SleepCardView *sleepView{nullptr};
+        Training_CardView *traingView{nullptr};
         MessageControlView *messageView{nullptr};
         SetMainView *setmainView{nullptr};
 
index 2143ad5..c39fb43 100644 (file)
@@ -102,19 +102,19 @@ namespace OHOS
     void MainModel::printCardSettings(void)\r
     {\r
         uint8_t i;\r
-        WEARABLE_LOGD(WEARABL_LOG_MODULE_APP, "_____________________________________________________\r\n");\r
+        WEARABLE_LOGE(WEARABL_LOG_MODULE_APP, "_____________________________________________________\r\n");\r
         for (i = 0; i < cardSettingCount; i++)\r
         {\r
             uint8_t cardId = cardSettings[i];\r
             const char *cardname = getCardNameFromMap(cardId);\r
-            WEARABLE_LOGD(WEARABL_LOG_MODULE_APP, "cardSettings[%d]:Id: %d, CardName: %s\r\n", i, cardId, cardname);\r
+            WEARABLE_LOGE(WEARABL_LOG_MODULE_APP, "cardSettings[%d]:Id: %d, CardName: %s\r\n", i, cardId, cardname);\r
         }\r
 \r
         for (uint8_t m = 0; m < (sizeof(cardInfoSet) / sizeof(cardInfoSet[0])); m++)\r
         {\r
-            WEARABLE_LOGD(WEARABL_LOG_MODULE_APP, "cardInfoSet[%d]:Id %d, Visible: %s\n", m, cardInfoSet[m].id, cardInfoSet[m].isVisible ? "true" : "false");\r
+            WEARABLE_LOGE(WEARABL_LOG_MODULE_APP, "cardInfoSet[%d]:Id %d, Visible: %s\n", m, cardInfoSet[m].id, cardInfoSet[m].isVisible ? "true" : "false");\r
         }\r
-        WEARABLE_LOGD(WEARABL_LOG_MODULE_APP, "_____________________________________________________\r\n");\r
+        WEARABLE_LOGE(WEARABL_LOG_MODULE_APP, "_____________________________________________________\r\n");\r
     }\r
 \r
     const char *MainModel::getCardNameFromMap(uint8_t cardId) const\r
@@ -134,7 +134,7 @@ namespace OHOS
         {\r
             if (card == cardInfoMap[i].id)\r
             {\r
-                WEARABLE_LOGD(WEARABL_LOG_MODULE_APP, "cardInfoMap[%d]:%d\n", i, cardInfoMap[i].id);\r
+                WEARABLE_LOGE(WEARABL_LOG_MODULE_APP, "cardInfoMap[%d]:%d\n", i, cardInfoMap[i].id);\r
                 return &cardInfoMap[i];\r
             }\r
         }\r
@@ -147,7 +147,7 @@ namespace OHOS
     /*初始化卡片设置*/\r
     void MainModel::InitCardSettings(void)\r
     {\r
-        WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "InitCardSettings");\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "InitCardSettings");\r
         char temp[CARD_SETTING_VALUE_LEN] = {0};\r
         int len;\r
         int index = 0;\r
@@ -179,7 +179,7 @@ namespace OHOS
                 {\r
                     if (cardInfoSet[i].id == cardSettings[j])\r
                     {\r
-                        //  WEARABLE_LOGD(WEARABL_LOG_MODULE_APP, "CardSettings:cardInfoSet[%d] is set cardSettings[%d]\r\n", i, j);\r
+                        //  WEARABLE_LOGE(WEARABL_LOG_MODULE_APP, "CardSettings:cardInfoSet[%d] is set cardSettings[%d]\r\n", i, j);\r
                         visible = true;\r
                         break;\r
                     }\r
@@ -211,12 +211,12 @@ namespace OHOS
         }\r
 \r
         // printCardSettings();\r
-        WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "InitCardSettings");\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "InitCardSettings");\r
     }\r
     void MainModel::DeleteCardSetting(uint8_t index)\r
     {\r
         /*设置卡片类型为false cardsetting 重新遍历map里面为ture的卡片{表盘必须存在}*/\r
-        WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "DeleteCardSetting");\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "DeleteCardSetting");\r
 \r
         if (cardSettingCount > CARD_SETTING_COUNT_MAX)\r
         {\r
@@ -234,7 +234,7 @@ namespace OHOS
         cardInfoSet[index].isVisible = false;\r
 #if 0\r
         int count = sizeof(cardInfoSet) / sizeof(cardInfoSet[0]);\r
-        WEARABLE_LOGD(WEARABL_LOG_MODULE_APP, "count:%d\r\n", count);\r
+        WEARABLE_LOGE(WEARABL_LOG_MODULE_APP, "count:%d\r\n", count);\r
         // 设置map里面的属性\r
         for (uint8_t i = 0; i < count; i++)\r
         {\r
@@ -242,10 +242,10 @@ namespace OHOS
             if (cardInfoMap[index].id == cardInfoSet[i].id)\r
             {\r
                 cardInfoSet[i].isVisible = false;\r
-                WEARABLE_LOGD(WEARABL_LOG_MODULE_APP, "删除卡片:cardSettings[%d] is %d \r\n", index + 1, cardSettings[index + 1]);\r
-                WEARABLE_LOGD(WEARABL_LOG_MODULE_APP, "设置删除卡片属性:cardInfoSet[%d] is %d \r\n", i, cardInfoSet[i].isVisible);\r
+                WEARABLE_LOGE(WEARABL_LOG_MODULE_APP, "删除卡片:cardSettings[%d] is %d \r\n", index + 1, cardSettings[index + 1]);\r
+                WEARABLE_LOGE(WEARABL_LOG_MODULE_APP, "设置删除卡片属性:cardInfoSet[%d] is %d \r\n", i, cardInfoSet[i].isVisible);\r
             }\r
-            WEARABLE_LOGD(WEARABL_LOG_MODULE_APP, "cardInfoSet[%d]:id%d\r\n", i, cardInfoSet[i].id);\r
+            WEARABLE_LOGE(WEARABL_LOG_MODULE_APP, "cardInfoSet[%d]:id%d\r\n", i, cardInfoSet[i].id);\r
         }\r
 #endif\r
         int mapindex = 0;\r
@@ -265,7 +265,7 @@ namespace OHOS
             // 设置其他卡片\r
             if (cardInfoSet[i].isVisible)\r
             {\r
-                //  WEARABLE_LOGD(WEARABL_LOG_MODULE_APP, "cardSettings[%d]\r\n", i);\r
+                //  WEARABLE_LOGE(WEARABL_LOG_MODULE_APP, "cardSettings[%d]\r\n", i);\r
                 cardSettings[mapindex++] = cardInfoSet[i].id;\r
             }\r
         }\r
@@ -283,13 +283,13 @@ namespace OHOS
         (void)UtilsSetValue("card_setting", temp);\r
 \r
         // printCardSettings();\r
-        WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "DeleteCardSetting");\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "DeleteCardSetting");\r
     }\r
 \r
     void MainModel::AddCardSetting(uint8_t index)\r
     {\r
         /*设置卡片类型为ture cardsetting 重新遍历map里面为ture的卡片{表盘必须存在}*/\r
-        WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AddCardSetting");\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AddCardSetting");\r
 \r
         if (cardSettingCount > CARD_SETTING_COUNT_MAX)\r
         {\r
@@ -334,7 +334,7 @@ namespace OHOS
             if (cardInfoSet[i].isVisible)\r
             {\r
                 cardSettings[mapindex++] = cardInfoSet[i].id;\r
-                WEARABLE_LOGD(WEARABL_LOG_MODULE_APP, "set cardInfoSet[%d]\r\n", i);\r
+                WEARABLE_LOGE(WEARABL_LOG_MODULE_APP, "set cardInfoSet[%d]\r\n", i);\r
             }\r
         }\r
         /*设置卡片[不被卡片管理,必须设置] */\r
@@ -351,7 +351,7 @@ namespace OHOS
         (void)UtilsSetValue("card_setting", temp);\r
 \r
         // printCardSettings();\r
-        WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AddCardSetting");\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AddCardSetting");\r
     }\r
     uint8_t MainModel::GetCardSettingCount(void)\r
     {\r
@@ -415,7 +415,7 @@ namespace OHOS
         if (id < DIAL_CLOCK || id >= DIAL_MAX)\r
             id = DIAL_CLOCK;\r
 \r
-        WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "InitDialSettingDefault");\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "InitDialSettingDefault");\r
         dialSetting.dialFlag = 0;\r
         dialSetting.dialId = id;\r
         dialSetting.dialFullName.clear(); // 用 clear() 替代空字符串\r
@@ -426,7 +426,13 @@ namespace OHOS
     {\r
         std::string tmp = std::to_string(setting.dialFlag) + "," + std::to_string(setting.dialId) + "," + setting.dialFullName + ",";\r
 \r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Updating dial settings: %s\r\n", tmp.c_str());\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Dial settings updated id %d\r\n",id);\r
+\r
+        // 存储表盘配置\r
         (void)UtilsSetValue("dial_setting", tmp.c_str());           // 存储表盘配置\r
+\r
+        // 存储当前表盘Id\r
         (void)UtilsSetValue("dial_id", std::to_string(id).c_str()); // 存储当前表盘Id\r
     }\r
 \r
@@ -435,7 +441,7 @@ namespace OHOS
     {\r
         char temp[DIAL_SETTING_VALUE_LEN] = {0}; // 创建一个临时字符数组用于存储拨号设置的字符串\r
         int len = UtilsGetValue("dial_setting", temp, DIAL_SETTING_VALUE_LEN);\r
-        WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Attempting to load dial settings from kvstore. Length: %d\r\n", len);\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Attempting to load dial settings from kvstore. Length: %d\r\n", len);\r
 \r
         if (len < 0)\r
         {\r
@@ -461,7 +467,7 @@ namespace OHOS
         if (setValue)\r
         {\r
             dialSetting.dialFlag = atoi(setValue); // 将字符串转换为整数\r
-            WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Dial flag loaded: %d\r\n", dialSetting.dialFlag);\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Dial flag loaded: %d\r\n", dialSetting.dialFlag);\r
         }\r
         else\r
         {\r
@@ -483,7 +489,7 @@ namespace OHOS
         if (setValue)\r
         {\r
             dialSetting.dialId = atoi(setValue); // 将字符串转换为整数\r
-            WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Dial ID loaded: %d\r\n", dialSetting.dialId);\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Dial ID loaded: %d\r\n", dialSetting.dialId);\r
         }\r
         else\r
         {\r
@@ -505,17 +511,17 @@ namespace OHOS
         if (setValue)\r
         {\r
             dialSetting.dialFullName = setValue; // 将完整名称赋值\r
-            WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Dial full name loaded: %s\r\n", dialSetting.dialFullName.c_str());\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Dial full name loaded: %s\r\n", dialSetting.dialFullName.c_str());\r
 \r
             if (dialSetting.dialFullName.empty() || access(dialSetting.dialFullName.c_str(), F_OK) != 0)\r
             {\r
-                WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Error: Dial full name is invalid or file does not exist. Initializing to default settings.\r\n");\r
+                WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Error: Dial full name is invalid or file does not exist. Initializing to default settings.\r\n");\r
                 InitDialSettingDefault(dialSetting.dialId);\r
             }\r
         }\r
         else\r
         {\r
-            WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Error: Third value is empty. Initializing to default settings.\r\n");\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Error: Third value is empty. Initializing to default settings.\r\n");\r
             InitDialSettingDefault(dialSetting.dialId);\r
         }\r
     }\r
@@ -539,11 +545,11 @@ namespace OHOS
     void MainModel::InitDialState(void) {  \r
         // 获取加锁状态  \r
         int lockstate = OHOS::ConfigModel::GetInstance()->get_configData_int(OHOS::ConfigModel::CONFIGMODEL_ITEM_PASSWORD_SWITCH);  \r
-        WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "lockstate = %d", lockstate);  \r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "lockstate = %d", lockstate);  \r
 \r
         // 判断加锁状态  \r
         if (lockstate == 1) {  \r
-            WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Device is locked (lock state == 1)");  \r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Device is locked (lock state == 1)");  \r
             uapi_dev_runtime_set_lock_status(1); // 上锁  \r
             dialstateInfo[static_cast<int>(DialState::LOCK)].active = true; // 设置锁定状态为真  \r
         }  \r
@@ -565,17 +571,17 @@ namespace OHOS
         //     if (dialstateInfo[stateIndex].active != value)\r
         //     {\r
         //         dialstateInfo[stateIndex].active = value; // 使用转换后的索引\r
-        //         WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Set dialstateInfo[%d].active = %d", stateIndex, value);\r
+        //         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Set dialstateInfo[%d].active = %d", stateIndex, value);\r
         //         SendMsgToUIService(UI_UPDATE_DIALSTATE_DATA, 0, nullptr, 0); // 发送更新消息\r
         //     }\r
         //     else\r
         //     {\r
-        //         WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "State %d is unchanged, no update needed.", stateIndex);\r
+        //         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "State %d is unchanged, no update needed.", stateIndex);\r
         //     }\r
         // }\r
         // else\r
         // {\r
-        //     WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "state %d is error", stateIndex);\r
+        //     WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "state %d is error", stateIndex);\r
         // }\r
     }\r
 \r
@@ -586,11 +592,11 @@ namespace OHOS
         {\r
             if (dialstateInfo[i].active)\r
             {\r
-                WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "high dialstateInfo[%d].active", i);\r
+                WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "high dialstateInfo[%d].active", i);\r
                 return dialstateInfo[i].state; // 返回活跃状态中优先级最高的\r
             }\r
         }\r
-        WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "no have high dialstateInfo.active");\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "no have high dialstateInfo.active");\r
         return DialState::INVALID; // 如果没有找到活跃状态,返回无效状态\r
     }\r
 \r
@@ -633,7 +639,7 @@ namespace OHOS
         {\r
             if (i == index + 1)\r
             {\r
-                WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "i:%d index:%d", i, index);\r
+                WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "i:%d index:%d", i, index);\r
                 uint8_t j = i;\r
                 for (; j < cardSettingCount - 1; j++)\r
                 {\r
@@ -646,14 +652,14 @@ namespace OHOS
 \r
         for (uint8_t i = 0; i < cardSettingCount; i++)\r
         {\r
-            WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "cardSettings[%d] = %d", i, cardSettings[i]);\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "cardSettings[%d] = %d", i, cardSettings[i]);\r
             (void)sprintf_s(temp + strlen(temp), CARD_SETTING_VALUE_LEN, "%d,", cardSettings[i]);\r
         }\r
         (void)UtilsSetValue("card_setting", temp);\r
 \r
-         WEARABLE_LOGD(WEARABL_LOG_MODULE_APP, "\r\n***************DeleteCardSetting********************\r\n");\r
+         WEARABLE_LOGE(WEARABL_LOG_MODULE_APP, "\r\n***************DeleteCardSetting********************\r\n");\r
         printCardSettings();\r
-         WEARABLE_LOGD(WEARABL_LOG_MODULE_APP, "\r\n_____________________________________________________\r\n");\r
+         WEARABLE_LOGE(WEARABL_LOG_MODULE_APP, "\r\n_____________________________________________________\r\n");\r
     }\r
 \r
     void MainModel::AddCardSetting(uint8_t index)\r
@@ -673,12 +679,12 @@ namespace OHOS
         cardSettings[cardSettingCount++] = cardInfoMap[index].id;\r
         for (uint8_t i = 0; i < cardSettingCount; i++)\r
         {\r
-            WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "cardSettings[%d] = %d", i, cardSettings[i]);\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "cardSettings[%d] = %d", i, cardSettings[i]);\r
             (void)sprintf_s(temp + strlen(temp), CARD_SETTING_VALUE_LEN, "%d,", cardSettings[i]);\r
         }\r
         (void)UtilsSetValue("card_setting", temp);\r
 \r
-         WEARABLE_LOGD(WEARABL_LOG_MODULE_APP, "\r\n***************AddCardSetting********************\r\n");\r
+         WEARABLE_LOGE(WEARABL_LOG_MODULE_APP, "\r\n***************AddCardSetting********************\r\n");\r
         printCardSettings();\r
         else\r
         {\r
index 17021a1..f5f408c 100644 (file)
 // #include "traing/training_card/include/Training_CardView.h"
 // #include "dnotdisturb/include/DnotDisturbModel.h"
 #include "weather/include/WeatherModel.h"
-// #include "heart_blood/health_service/health_service.h"
-// #include "sleep/include/SleepControlView.h"
-// #include "sleep/include/SleepCardView.h"
-// #include "sleep/include/SleepModel.h"
+#include "heart_blood/health_service/health_service.h"
+#include "sleep/include/SleepControlView.h"
+#include "sleep/include/SleepCardView.h"
+#include "sleep/include/SleepModel.h"
 #include "MainModel.h"
 // #include "../../../../../../../drivers/peripheral/utils/custom_runtime.h"
 // #include "rebootandshutdown/include/RebootAndShutdownModelC.h"
@@ -77,10 +77,10 @@ REGIST_SLICE(VIEW_MAIN, MainViewSample, MainPresenterSample);
     {
         WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "~MainPresenterSample");
         g_pMainPresenterSample = nullptr;
-        // /*从主界面退出,关闭心率检测*/
-        // HeartModel::GetInstance()->Heart_Stop();
-        // HeartModel::GetInstance()->Heart_Control(HeartState::End,
-        //                                        HeartCheck::CARDCHECK);
+        /*从主界面退出,关闭心率检测*/
+        HeartModel::GetInstance()->Heart_Stop();
+        HeartModel::GetInstance()->Heart_Control(HeartState::End,
+                                               HeartCheck::CARDCHECK);
     }
 
     MainPresenterSample *MainPresenterSample::GetInstance(void)
@@ -160,12 +160,12 @@ if (ConfigModel::GetInstance()->GetisFirstTimeStart() == true) {
         WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "StatusButtonClickListener: %s", view.GetViewId());
         std::string curViewId = view.GetViewId();
 
-        // UIImageView *imgView = static_cast<UIImageView *>(&view);
-        // if (HealthModel::GetInstance() == nullptr)
-        // {
-        //     WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "health model nullptr");
-        //     return false;
-        // }
+        UIImageView *imgView = static_cast<UIImageView *>(&view);
+        if (HealthModel::GetInstance() == nullptr)
+        {
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "health model nullptr");
+            return false;
+        }
 
         // /*发生点击进入密码锁*/
         // if (uapi_dev_runtime_get_lock_status())
@@ -175,32 +175,32 @@ if (ConfigModel::GetInstance()->GetisFirstTimeStart() == true) {
         //     return true;
         // }
 
-        // if (curViewId == CONNECTEDSTATUSBACKGROUNDBUTTON)
-        // {
-        //     PullUpDownView::GetInstance()->ChangeView(DROPDOWNVIEW, CONNECTEDSTATUSVIEW);
-        //     PullUpDown_StopTimer(); // 切换到连接状态视图时停止定时器
-        //     return true;
-        // }
-        // else if (curViewId == CONNECTEDSTATUSVIEWCLOSEBUTTON)
-        // {
-        //     PullUpDownView::GetInstance()->ChangeView(CONNECTEDSTATUSVIEW, DROPDOWNVIEW);
-        //     PullUpDown_StartTimer(1000); // 切回下拉控制中心视图开启定时器
-        //     return true;
-        // }
-        // // 设置血氧进入
-        // else if (curViewId == MAIN_CLICK_BLOOD)
-        // {
-        //     MainModel::GetInstance().SetFromSetCardView(true);
-        //     MainModel::GetInstance().SetFromCardId(BLOODOXGEN);
-        //     // 如果正在充电进入提醒界面
-        //     if (get_charge_stat())
-        //     {
-        //         HealthState highHealthState;
-        //         highHealthState.checkType = CHARGE;
-        //         HealthService::GetInstance()->SetHealthCurrent(highHealthState);
-        //         NativeAbility::GetInstance().ChangeSlice(VIEW_CHECK_INVALID, TransitionType::TRANSITION_ZOOM);
-        //     }
-        // }
+        if (curViewId == CONNECTEDSTATUSBACKGROUNDBUTTON)
+        {
+            PullUpDownView::GetInstance()->ChangeView(DROPDOWNVIEW, CONNECTEDSTATUSVIEW);
+            PullUpDown_StopTimer(); // 切换到连接状态视图时停止定时器
+            return true;
+        }
+        else if (curViewId == CONNECTEDSTATUSVIEWCLOSEBUTTON)
+        {
+            PullUpDownView::GetInstance()->ChangeView(CONNECTEDSTATUSVIEW, DROPDOWNVIEW);
+            PullUpDown_StartTimer(1000); // 切回下拉控制中心视图开启定时器
+            return true;
+        }
+        // 设置血氧进入
+        else if (curViewId == MAIN_CLICK_BLOOD)
+        {
+            MainModel::GetInstance().SetFromSetCardView(true);
+            MainModel::GetInstance().SetFromCardId(BLOODOXGEN);
+            // 如果正在充电进入提醒界面
+            // if (get_charge_stat())
+            // {
+            //     HealthState highHealthState;
+            //     highHealthState.checkType = CHARGE;
+            //     HealthService::GetInstance()->SetHealthCurrent(highHealthState);
+            //     NativeAbility::GetInstance().ChangeSlice(VIEW_CHECK_INVALID, TransitionType::TRANSITION_ZOOM);
+            // }
+        }
         // 设置卡片管理进入
          if (curViewId == MAIN_CLICK_SETCARD)
         {
@@ -430,8 +430,8 @@ if (ConfigModel::GetInstance()->GetisFirstTimeStart() == true) {
         if (previousCardId == HEART_RATE && currentCardId != HEART_RATE)
         {
             LogCardTransition(previousCardId, currentCardId);
-            // HeartModel::GetInstance()->Heart_Stop();
-            // HeartModel::GetInstance()->Heart_Control(HeartState::End,HeartCheck::CARDCHECK); //主动检测心率
+            HeartModel::GetInstance()->Heart_Stop();
+            HeartModel::GetInstance()->Heart_Control(HeartState::End,HeartCheck::CARDCHECK); //主动检测心率
         }
         // 从指南针卡片跳转到其他卡片时切换到关闭长亮屏
         if (previousCardId == COMPASS && currentCardId != COMPASS)
@@ -501,16 +501,16 @@ if (ConfigModel::GetInstance()->GetisFirstTimeStart() == true) {
     /*睡眠卡片*/
     void MainPresenterSample::ResetSleepCardView()
     {
-        // if (SleepCardView::GetInstance() != nullptr)
-        // {
-        //     auto sleepCardView = SleepCardView::GetInstance()->GetSleepCardView();
-        //     if (sleepCardView->GetCurrentPage() != 0)
-        //     {
-        //         sleepCardView->SetCurrentPage(0);
-        //     }
-        // }
+        if (SleepCardView::GetInstance() != nullptr)
+        {
+            auto sleepCardView = SleepCardView::GetInstance()->GetSleepCardView();
+            if (sleepCardView->GetCurrentPage() != 0)
+            {
+                sleepCardView->SetCurrentPage(0);
+            }
+        }
 
-        // SleepModel::GetInstance().msg_save_sleep_data();
+        SleepModel::GetInstance().msg_save_sleep_data();
     }
     /*天气卡片*/
     void MainPresenterSample::ResetWeatherCardView()
@@ -529,7 +529,7 @@ if (ConfigModel::GetInstance()->GetisFirstTimeStart() == true) {
     /*心率卡片*/
     void MainPresenterSample::StartHeartRateDetection()
     {
-      // HeartModel::GetInstance()->Heart_Control(HeartState::End, HeartCheck::PASSIVITY);
+    // HeartModel::GetInstance()->Heart_Control(HeartState::End, HeartCheck::PASSIVITY);
 #if HEART_RATE_CHECK_TIMEOUT
     HeartModel::GetInstance()->Heart_Control(HeartState::Start,HeartCheck::CARDCHECK);
 #else
index 44592f8..bbeca06 100644 (file)
@@ -36,9 +36,9 @@ namespace OHOS
     static const MainViewMapper CardMapper[] = {
         {WATCH_FACE, &MainViewSample::InitWatchFacePage},
         {HEART_RATE, &MainViewSample::InitHeartRatePage},
-        // {TRAINING, &MainViewSample::InitTrainingPage},
+        {TRAINING, &MainViewSample::InitTrainingPage},
         {COMPASS, &MainViewSample::InitCompassPage},
-        // {SLEEP, &MainViewSample::InitSleepPage},
+        {SLEEP, &MainViewSample::InitSleepPage},
         {BLOODOXGEN, &MainViewSample::InitBloodOxygenPage},
         {GOAL, &MainViewSample::InitGoalPage},
         {WEATHER, &MainViewSample::InitWeatherPage},
@@ -281,12 +281,11 @@ namespace OHOS
             {
                 if (cardSettings[i] == CardMapper[j].id)
                 {
-                    WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,  "MainViewSample:: recordCard[%d]:%p", j, recordCard[j]);
+                    WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,  "MainViewSample:: recordCard[%d]", j);
                     recordCard[j] = (this->*(CardMapper[j].func))();
                     if (recordCard[j] == nullptr)
                     {
-                        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,
-                                      "MainViewSample:: recordCard %d error", j);
+                        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "MainViewSample:: recordCard %d error", j);
                         return false;
                     }
                     WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP,
@@ -316,6 +315,12 @@ namespace OHOS
                 WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "MainViewSample:: HorViewLoad cardid = %d ViewIndex = %d",
                               cardId, recordCard[cardId]->GetViewIndex());
             }
+            else
+            {
+                WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "MainViewSample:: HorViewLoad cardid = %d error",
+                              cardId);
+                // continue;
+            }
         }
     }
 
@@ -389,6 +394,7 @@ namespace OHOS
     {
         WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "MainViewSample::InitWatchFacePage");
         DialSetting &setting = presenter_->GetDialSetting();
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "MainViewSample::InitWatchFacePage dialFlag = %d", setting.dialFlag);
         if (setting.dialFlag)
         {
             mainClockView = InitWatchOffDial(setting);
@@ -447,15 +453,14 @@ namespace OHOS
     // 主界面训练卡片
     UICardPage *MainViewSample::InitTrainingPage(void)
     {
-        // WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "MainViewSample::InitTrainingPage");
-        // traingView = new Training_CardView();
-        // if (traingView == nullptr)
-        // {
-        //     WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "traingView new fail");
-        //     return nullptr;
-        // }
-        // return traingView;
-        return nullptr;
+        WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "MainViewSample::InitTrainingPage");
+        traingView = new Training_CardView();
+        if (traingView == nullptr)
+        {
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "traingView new fail");
+            return nullptr;
+        }
+        return traingView;
     }
 
     // 主界面天气卡片
@@ -525,15 +530,14 @@ namespace OHOS
     /*主界面睡眠卡片*/
     UICardPage *MainViewSample::InitSleepPage(void)
     {
-        // WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "MainViewSample::InitSetMainPage");
-        // sleepView = new SleepCardView();
-        // if (sleepView == nullptr)
-        // {
-        //     WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "sleepView new fail");
-        //     return nullptr;
-        // }
-        // return sleepView;
-        return nullptr;
+        WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "MainViewSample::InitSetMainPage");
+        sleepView = new SleepCardView();
+        if (sleepView == nullptr)
+        {
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "sleepView new fail");
+            return nullptr;
+        }
+        return sleepView;
     }
 
     void MainViewSample::SetPage(int16_t page, bool loadAdjacent)