修复训练结束弹窗bug
authorCaisking <3449750381@qq.com>
Fri, 12 Apr 2024 12:37:40 +0000 (20:37 +0800)
committerCaisking <3449750381@qq.com>
Fri, 12 Apr 2024 12:37:40 +0000 (20:37 +0800)
code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistModel.cpp
code/sdk/application/wearable/fd230app/nativeui/traing/include/TraingModel.h
code/sdk/application/wearable/fd230app/nativeui/traing/src/TraingModel.cpp
code/sdk/application/wearable/fd230app/nativeui/traing/training_card/include/TraingCardView.h
code/sdk/application/wearable/fd230app/nativeui/traing/training_card/src/TraingCardPresenter.cpp
code/sdk/application/wearable/fd230app/nativeui/traing/training_card/src/TraingCardView.cpp

index e64c1f0..4145204 100644 (file)
@@ -29,7 +29,6 @@ namespace OHOS
         {VIEW_COMPASS, PNG_APPLIST_COMPASS_IMAGE, PNG_APPLIST_COMPASS_IMAGE, "指南针", nullptr},
         {VIEW_BLOODOXY, PNG_APPLIST_SPO2_IMAGE, PNG_APPLIST_SPO2_IMAGE, "血氧饱和度", nullptr},
         {VIEW_HEART, PNG_APPLIST_HEART_IMAGE, PNG_APPLIST_HEART_IMAGE, "心率检测", nullptr},
-        {VIEW_INDOORWALK, PNG_APPLIST_WALK_IMAGE, PNG_APPLIST_WALK_IMAGE, "室内步行", nullptr},
         {VIEW_WEATHER, PNG_APPLIST_WEATHER_IMAGE, PNG_APPLIST_WEATHER_IMAGE, "天气", nullptr},
         {VIEW_TRAINING, PNG_APPLIST_TRAINING_IMAGE, PNG_APPLIST_TRAINING_IMAGE, "体能训练", nullptr},
         {VIEW_TRAINING_RECORD, PNG_APPLIST_TRAINING_RECORD_IMAGE, PNG_APPLIST_TRAINING_RECORD_IMAGE, "训练记录", nullptr},
@@ -51,6 +50,7 @@ namespace OHOS
         {VIEW_OFFLINEVOICE, PNG_APPLIST_VOCASSIST_IMAGE, PNG_APPLIST_VOCASSIST_IMAGE, "语音助手", nullptr},
         {VIEW_UISAMPLE, PNG_APPLIST_UI_SAMPLE_IMAGE, PNG_APPLIST_UI_SAMPLE_IMAGE, "示例", nullptr},
         {VIEW_MESSAGE, PNG_APPLIST_CALLER_IMAGE, PNG_APPLIST_CALLER_IMAGE, "信息通知", nullptr},
+        {VIEW_INDOORWALK, PNG_APPLIST_WALK_IMAGE, PNG_APPLIST_WALK_IMAGE, "室内步行", nullptr},
 #endif
 
     };
index 04f33d0..94d4105 100644 (file)
@@ -149,10 +149,16 @@ namespace OHOS
     };
     struct SportData
     {
-        int calories; // 训练卡路里
-        int duration; // 训练时长
-        int steps;    // 训练步数
-        int distance; // 训练距离
+        uint32 starttime;         // 开始时间时间戳
+        uint32 endtime;           // 结束时间时间戳
+        int goaldegree;           // 目标完成度
+        int calories;             // 训练卡路里
+        int duration;             // 训练时长
+        int steps;                // 训练步数
+        int distance;             // 训练距离
+        int intensity;            // 训练强度
+        int avgheart;             // 训练平均心率
+        UIResourceTextId sportId; // 训练Id
     };
 
     class TraingModel
@@ -169,15 +175,11 @@ namespace OHOS
         bool InitButton(UIButton *&button, int left, int top, int width, int height, const char *viewId);
         bool InitButtonExt(UILabelButtonExt *&button, int left, int top, int width, int height, const char *viewId, UIResourceTextId id, int fontSize);
         bool InitImageView(UIImageView *&imageView, int left, int top, int width, int height, const char *viewId, const char *imagePath);
-        
+
         void InitList();
         void SetQuickTraining(QuickTraining *quickTraining);
         QuickTraining *GetQuickTraining() const;
 
-        /*屏幕管理*/
-        void SetSteadyOn();
-        void SetSteadyOff();
-
         /*定时器 */
         std::string DisplayMotionDuration();
         /*设置运动项目*/
@@ -204,9 +206,6 @@ namespace OHOS
         std::string motionDuration;                         // 训练时长
         UIResourceTextId sportId_ = STR_EXTREME_SPORTS;     // 训练项目
         ExerciseState sportstate_ = ExerciseState::General; // 训练状态
-
-        const power_display_svr_api_t *display_api = power_display_svr_get_api();
-        uint32_t display_time;
     };
 }
 
index dadbdca..8890dc4 100644 (file)
@@ -411,14 +411,7 @@ namespace OHOS
         // WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "TraingModel::InitImageView is succeed");
         return true;
     }
-    void TraingModel::SetSteadyOn()
-    {
-        display_api->set_screen_set_keepon_timeout(-1);
-    }
-    void TraingModel::SetSteadyOff()
-    {
-        display_api->set_screen_set_keepon_timeout(0);
-    }
+
     /* -------------------------------------------------------------------------- */
     /*设置运动Id*/
     void TraingModel::SetSportEvent(UIResourceTextId id)
index 3ceee1f..bc893f9 100644 (file)
@@ -74,6 +74,7 @@ namespace OHOS
 \r
         void SetEndViewStatus(bool status);\r
         void ShowEndView();\r
+        void RefreshEndView();\r
         UIView *GetTraingCrad();\r
         int GetCurrentPage();\r
 \r
index f8c4378..e9366d6 100644 (file)
@@ -187,7 +187,7 @@ namespace OHOS
         TrainingDetailView::GetInstance()->GetStepLabel()->SetText(stepsStr.c_str());\r
 \r
         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ControlSensor--Calories: %s, Distance: %s, Steps: %s", calorieStr.c_str(), distanceStr.c_str(), stepsStr.c_str());\r
-        \r
+\r
         // 释放sportdata内存\r
     }\r
     /*刷新time和data*/\r
@@ -236,6 +236,7 @@ namespace OHOS
             ControlSensor(ExerciseState::Pause);\r
             // 弹窗显示是否结束\r
             TraingCardView::GetInstance()->SetEndViewStatus(true);\r
+            TraingCardView::GetInstance()->RefreshEndView();\r
         }\r
         // 退出按键\r
         if (strcmp(view.GetViewId(), BUTTONEXIT) == 0)\r
index c306aaf..8857a41 100644 (file)
@@ -235,7 +235,7 @@ namespace OHOS
     /*结束弹窗界面*/\r
     void TraingCardView::ShowEndView()\r
     {\r
-        momentumFlag = false; // 标志位还原\r
+        // momentumFlag = false; // 标志位还原\r
         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ShowEndView");\r
         endView = new UIScrollView();\r
         if (endView == nullptr)\r
@@ -248,23 +248,9 @@ namespace OHOS
         endView->SetReboundSize(50);\r
         endView->SetDirection(1);\r
 \r
-        // 获取训练卡路里判断运动量\r
-        int caldata = TraingModel::GetInstance()->GetCal();\r
-        if (caldata >= 10)\r
-        {\r
-            momentumFlag = true;\r
-        }\r
-        // 初始化Lable\r
-        if (momentumFlag)\r
-        {\r
-            TraingModel::GetInstance()->InitLabel(endtitle, 83, 50, 300, 35, "label1", "结束运动", DEFAULT_VECTOR_FONT_FILENAME, 30);\r
-            TraingModel::GetInstance()->InitLabel(notelabel, 56, 187, 360, 40, "label2", "是否结束本次运动", DEFAULT_VECTOR_FONT_FILENAME, 30);\r
-        }\r
-        else\r
-        {\r
-            TraingModel::GetInstance()->InitLabel(endtitle, 83, 50, 300, 35, "label1", "注意", DEFAULT_VECTOR_FONT_FILENAME, 30);\r
-            TraingModel::GetInstance()->InitLabel(notelabel, 56, 167, 360, 80, "label2", "当前运动量过少,无法记录 是否结束运动", DEFAULT_VECTOR_FONT_FILENAME, 30);\r
-        }\r
+        TraingModel::GetInstance()->InitLabel(endtitle, 83, 50, 300, 35, "label1", "注意", DEFAULT_VECTOR_FONT_FILENAME, 30);\r
+        TraingModel::GetInstance()->InitLabel(notelabel, 56, 167, 360, 80, "label2", "当前运动量过少,无法记录 是否结束运动", DEFAULT_VECTOR_FONT_FILENAME, 30);\r
+\r
         endView->Add(endtitle);\r
         endView->Add(notelabel);\r
 \r
@@ -299,7 +285,28 @@ namespace OHOS
         endView->SetVisible(status);\r
         return;\r
     }\r
-\r
+    /*获取运动量结束弹窗界面刷新*/\r
+    void TraingCardView::RefreshEndView()\r
+    {\r
+        // 获取训练卡路里判断运动量\r
+        int caldata = TraingModel::GetInstance()->GetCal();\r
+        if (caldata >= 1)\r
+        {\r
+            momentumFlag = true;\r
+        }\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "momentumFlag %d", momentumFlag);\r
+        if (momentumFlag)\r
+        {\r
+            // 正常结束\r
+            endtitle->SetTextId(STR_END_MOVEMENT);\r
+            notelabel->SetTextId(STR_END_THIS_MOVEMENT);\r
+        }\r
+        else\r
+        {\r
+            endtitle->SetTextId(STR_LOOK_OUT);\r
+            notelabel->SetTextId(STR_INSUFFICIENT_EXERCISE_AMOUNT);\r
+        }\r
+    }\r
     /*获取卡片View单例*/\r
     UIView *TraingCardView::GetTraingCrad()\r
     {\r