From: Caisking Date: Wed, 22 Oct 2025 06:21:36 +0000 (+0800) Subject: 增加女性健康Slice X-Git-Tag: V1.0.9_20251128_194606_LN~180^2~12^2~2 X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=6199aae08e80e3a75a379e1721e9259c425bee43;p=mirrors%2FFD230.git 增加女性健康Slice --- diff --git a/code/sdk/application/wearable/fd272/nativeapp/nativelauncher/include/AppViewIDs.h b/code/sdk/application/wearable/fd272/nativeapp/nativelauncher/include/AppViewIDs.h index 24edf3aa2..fef757494 100644 --- a/code/sdk/application/wearable/fd272/nativeapp/nativelauncher/include/AppViewIDs.h +++ b/code/sdk/application/wearable/fd272/nativeapp/nativelauncher/include/AppViewIDs.h @@ -155,6 +155,7 @@ typedef enum : uint16_t VIEW_OBU_MESSAGE, /* -------------------------------------------------------------------------- */ VIEW_CALENDAR, // 日历 + VIEW_WOMEN_HEALTH, // 女性健康 VIEW_SAFE_MODE, // 安全模式 VIEW_ASSISTANT, // 智能助手 VIEW_SET_TIME_FORMAT, // 时间格式 diff --git a/code/sdk/application/wearable/fd272/nativeapp/nativeui/bloodoxygen/src/BloodOxygenModel.cpp b/code/sdk/application/wearable/fd272/nativeapp/nativeui/bloodoxygen/src/BloodOxygenModel.cpp index e6d67c41e..cb15e40f9 100644 --- a/code/sdk/application/wearable/fd272/nativeapp/nativeui/bloodoxygen/src/BloodOxygenModel.cpp +++ b/code/sdk/application/wearable/fd272/nativeapp/nativeui/bloodoxygen/src/BloodOxygenModel.cpp @@ -66,6 +66,7 @@ void BloodOxygenModel::Blood_Control(BloodState state) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "startspo2 End"); #ifdef SUPPORT_PPG_SERVICE ppg_spo2_stop(); + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ppg_spo2_stop"); #endif startspo2 = false; #ifdef SYSTEM_LOG_SERVICE @@ -82,9 +83,9 @@ void BloodOxygenModel::Blood_Control(BloodState state) { WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "充电不能检测"); return; } - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "startspo2 Start"); #ifdef SUPPORT_PPG_SERVICE ppg_spo2_start(); + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ppg_spo2_start"); #endif startspo2 = true; #ifdef SYSTEM_LOG_SERVICE @@ -110,6 +111,7 @@ void BloodOxygenModel::Blood_Start() { SetResult(BloodResult::NOT_TESTED); // 成功检测 // 进行初始化操作 if (!sensorstate) { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Blood_Start"); Blood_Control(BloodState::Start); sensorstate = true; } @@ -123,6 +125,7 @@ void BloodOxygenModel::Blood_Stop() { if (sensorstate) { Blood_Control(BloodState::End); + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Blood_Stop"); sensorstate = false; Blood_Result(); // 处理结果 } diff --git a/code/sdk/application/wearable/fd272/nativeapp/nativeui/womenhealth/include/WomenHealthModel.h b/code/sdk/application/wearable/fd272/nativeapp/nativeui/womenhealth/include/WomenHealthModel.h new file mode 100644 index 000000000..b0d0e07ad --- /dev/null +++ b/code/sdk/application/wearable/fd272/nativeapp/nativeui/womenhealth/include/WomenHealthModel.h @@ -0,0 +1,27 @@ +/* + * Copyright (c) CompanyNameMagicTag 2021-2021. All rights reserved. + * Description: WomenHealthModel.h + * Author: + * Create: 2021-10-12 + */ + #ifndef WomenHealth_MODEL_H + #define WomenHealth_MODEL_H + + + + + namespace OHOS { + + + class WomenHealthModel { + public: + static WomenHealthModel *GetInstance(void); + + private: + WomenHealthModel(); + WomenHealthModel(const WomenHealthModel &); + virtual ~WomenHealthModel(); + + }; + } + #endif \ No newline at end of file diff --git a/code/sdk/application/wearable/fd272/nativeapp/nativeui/womenhealth/include/WomenHealthPresenter.h b/code/sdk/application/wearable/fd272/nativeapp/nativeui/womenhealth/include/WomenHealthPresenter.h new file mode 100644 index 000000000..3bfe17760 --- /dev/null +++ b/code/sdk/application/wearable/fd272/nativeapp/nativeui/womenhealth/include/WomenHealthPresenter.h @@ -0,0 +1,44 @@ +/* + * Copyright (c) CompanyNameMagicTag 2021-2021. All rights reserved. + * Description: WomenHealthPresenter.h + * Author: + * Create: 2021-10-12 + */ + + #ifndef WomenHealth_PRESENTER_H + #define WomenHealth_PRESENTER_H + + #include "key/include/KeyInputListener.h" + #include "Presenter.h" + #include "ohos_types.h" + + #include "cmsis_os.h" + #include "wearable_log.h" + #include "UiConfig.h" + #include "NativeAbility.h" + + namespace OHOS { + class WomenHealthView; + class WomenHealthPresenter : public Presenter, + public UIView::OnClickListener, + public UIView::OnDragListener, + public RootView::OnKeyActListener + { + public: + WomenHealthPresenter(); + ~WomenHealthPresenter() override; + + void OnStart() override; + void OnResume() override; + static WomenHealthPresenter *GetInstance(void); + bool OnClick(UIView &view, const ClickEvent &event) override; + bool OnKeyAct(UIView &view, const KeyEvent &event) override; + bool OnDragEnd(UIView &view, const DragEvent &event) override; + + + private: + + }; + } + + #endif \ No newline at end of file diff --git a/code/sdk/application/wearable/fd272/nativeapp/nativeui/womenhealth/include/WomenHealthView.h b/code/sdk/application/wearable/fd272/nativeapp/nativeui/womenhealth/include/WomenHealthView.h new file mode 100644 index 000000000..fe6e16dee --- /dev/null +++ b/code/sdk/application/wearable/fd272/nativeapp/nativeui/womenhealth/include/WomenHealthView.h @@ -0,0 +1,58 @@ + /* + * Copyright (c) CompanyNameMagicTag 2021-2021. All rights reserved. + * Description: CalculatorView.h + * Author: + * Create: 2021-10-12 + */ + +#ifndef WomenHealth_VIEW_H +#define WomenHealth_VIEW_H + +#include "View.h" + +#include "components/ui_view_group.h" +#include "components/ui_image_animator.h" +#include "components/ui_scroll_view.h" +#include "components/ui_label.h" +#include "components/ui_label_ext.h" +#include "components/ui_label_button.h" +#include "components/ui_list.h" +#include "components/abstract_adapter.h" +#include "components/ui_image_view.h" + + #include "womenhealth/include/WomenHealthPresenter.h" + +namespace OHOS { + +class WomenHealthView : public View +{ +public: + WomenHealthView(); + ~WomenHealthView(); + + void OnStart() override; + static WomenHealthView *GetInstance(); + bool updata_label(int8_t type); + +private: + bool Label_init(); + UIViewGroup *group{nullptr}; + UIView:: OnDragListener* dragListener{nullptr}; + UILabel *mon_label{nullptr}; + UILabel *week_label[7]{nullptr}; + UILabel *day_label[31]{nullptr}; + UIImageView *imageview{nullptr}; + + UIImageAnimatorView *PullUpAnimatorView{nullptr}; // 上拉动画 + + ImageAnimatorInfo PullUpimageAnimatorInfo[70]{0}; + + const ImageInfo** PullUpimageAnimator_imageInfo{nullptr}; + + uint32_t show_y=0; + uint32_t show_m=0; + uint32_t show_d=0; +}; +} + +#endif \ No newline at end of file diff --git a/code/sdk/application/wearable/fd272/nativeapp/nativeui/womenhealth/src/WomenHealthModel.cpp b/code/sdk/application/wearable/fd272/nativeapp/nativeui/womenhealth/src/WomenHealthModel.cpp new file mode 100644 index 000000000..c24dee697 --- /dev/null +++ b/code/sdk/application/wearable/fd272/nativeapp/nativeui/womenhealth/src/WomenHealthModel.cpp @@ -0,0 +1,35 @@ +/* + * Copyright (c) CompanyNameMagicTag 2021-2021. All rights reserved. + * Description: WomenHealthModel.cpp + * Author: + * Create: 2021-10-12 + */ + + + #include "womenhealth/include/WomenHealthModel.h" + + #ifdef __cplusplus + extern "C" { + #endif + + using namespace OHOS; + + WomenHealthModel::WomenHealthModel() + { + } + + WomenHealthModel::~WomenHealthModel() + { + } + + + WomenHealthModel *WomenHealthModel::GetInstance(void) + { + static WomenHealthModel callLogModel; + return &callLogModel; + } + + #ifdef __cplusplus + } + #endif + \ No newline at end of file diff --git a/code/sdk/application/wearable/fd272/nativeapp/nativeui/womenhealth/src/WomenHealthPresenter.cpp b/code/sdk/application/wearable/fd272/nativeapp/nativeui/womenhealth/src/WomenHealthPresenter.cpp new file mode 100644 index 000000000..314407917 --- /dev/null +++ b/code/sdk/application/wearable/fd272/nativeapp/nativeui/womenhealth/src/WomenHealthPresenter.cpp @@ -0,0 +1,95 @@ +/* + * Copyright (c) CompanyNameMagicTag 2021-2021. All rights reserved. + * Description: WomenHealthPresenter.cpp + * Author: + * Create: 2021-10-12 + */ + + #include "womenhealth/include/WomenHealthView.h" + #include "womenhealth/include/WomenHealthModel.h" + #include "gfx_utils/mem_check.h" + #include "common/key_code.h" + #include "womenhealth/include/WomenHealthPresenter.h" + #include "custom_utils.h" + #include "NativeRegisterManager.h" + + namespace OHOS + { + + REGIST_MENU_PRO(VIEW_WOMEN_HEALTH, WomenHealthView, WomenHealthPresenter, + PNG_APPLIST_CALENDAR_IMAGE_BIG, PNG_APPLIST_CALENDAR_IMAGE, PNG_APPLIST_CALENDAR_IMAGE, "日历", STR_CALENDAR); + + static WomenHealthPresenter *g_pMainView = nullptr; + WomenHealthPresenter::WomenHealthPresenter() + { + g_pMainView = this; + #ifdef MEM_CHECK + MemCheck::GetInstance()->EnableLeakCheck(true); + #endif + } + + WomenHealthPresenter::~WomenHealthPresenter() + { + g_pMainView = nullptr; + #ifdef MEM_CHECK + MemCheck::GetInstance()->EnableLeakCheck(false); + #endif + } + + WomenHealthPresenter *WomenHealthPresenter::GetInstance(void) + { + return g_pMainView; + } + + void WomenHealthPresenter::OnStart() + { + } + + void WomenHealthPresenter::OnResume() + { + RootView::GetInstance()->SetOnKeyActListener(this); + } + + bool WomenHealthPresenter::OnClick(UIView &view, const ClickEvent &event) + { + UNUSED(event); + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "OnClick"); + + return false; + } + + bool WomenHealthPresenter::OnDragEnd(OHOS::UIView &view, const OHOS::DragEvent &event) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "MainCallingPresenter OnDragEnd"); + if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT) + { + if (event.GetPreLastPoint().x - event.GetStartPoint().x > 100) + NativeAbility::GetInstance().Back(); + } + if (event.GetDragDirection() == DragEvent::DIRECTION_BOTTOM_TO_TOP) + { + // if(event.GetPreLastPoint().y-event.GetStartPoint().y>100) + WomenHealthView::GetInstance()->updata_label(2); + } + if (event.GetDragDirection() == DragEvent::DIRECTION_TOP_TO_BOTTOM) + { + // if(event.GetPreLastPoint().y-event.GetStartPoint().y>100) + WomenHealthView::GetInstance()->updata_label(1); + } + return true; + } + + bool WomenHealthPresenter::OnKeyAct(UIView &view, const KeyEvent &event) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlipayPresenter::OnKeyAct"); + uint16 keyID = event.GetKeyId(); + uint16_t keyState = event.GetState(); + // 如果是power键就返回上一级 + if (keyID == static_cast(ZliteKeyCode::ZLITE_KEY_POWER) && keyState == 1 && uapi_get_screen_state() == 0) + { + uint16_t preSlice = NativeAbility::GetInstance().GetPreSliceId(); + NativeAbility::GetInstance().Back(); + } + return true; + } + } \ No newline at end of file diff --git a/code/sdk/application/wearable/fd272/nativeapp/nativeui/womenhealth/src/WomenHealthView.cpp b/code/sdk/application/wearable/fd272/nativeapp/nativeui/womenhealth/src/WomenHealthView.cpp new file mode 100644 index 000000000..a1099833c --- /dev/null +++ b/code/sdk/application/wearable/fd272/nativeapp/nativeui/womenhealth/src/WomenHealthView.cpp @@ -0,0 +1,394 @@ +/* + * Copyright (c) CompanyNameMagicTag 2021-2021. All rights reserved. + * Description: WomenHealthView.cpp + * Author: + * Create: 2021-10-12 + */ + + #include "womenhealth/include/WomenHealthView.h" + #include "womenhealth/include/WomenHealthModel.h" + #include "uicomponents/UIComponents.h" + + #include "wearable_log.h" + #include "UiConfig.h" + #include "NativeAbility.h" + #include "ConfigModel.h" + #include "languagecode/LanguageInit.h" + namespace OHOS + { + + static WomenHealthView *g_pMainView_WomenHealthView = nullptr; + + static char *dial_id_str[] = {"7", "8", "9", "C", "%", "4", "5", "6", "÷", "x", "1", "2", "3", "-", "+", "", "0", ".", "=", ""}; + + static constexpr int16_t PULLUP_ANIMATOR_VIEW_X = 213; + static constexpr int16_t PULLUP_ANIMATOR_VIEW_Y = 380; + static constexpr int16_t PULLUP_ANIMATOR_VIEW_W = 40; + static constexpr int16_t PULLUP_ANIMATOR_VIEW_H = 40; + static constexpr int16_t PULLUP_ANIMATOR_VIEW_NUM_FRAMES = 70; + static constexpr int16_t PULLUP_ANIMATOR_VIEW_TIME = 100; + + static constexpr const char *PullUpPaths = "/user/res/weather/PullUp/PullUp_"; + + static constexpr const char *stepPaths = "/user/res/step/"; + + WomenHealthView::WomenHealthView() + { + g_pMainView_WomenHealthView = this; + } + + WomenHealthView::~WomenHealthView() + { + g_pMainView_WomenHealthView = nullptr; + if (group) + { + group->RemoveAll(); + + if (mon_label) + { + delete mon_label; + mon_label = nullptr; + } + + if (imageview) + { + delete imageview; + imageview = nullptr; + } + + for (int i = 0; i < 7; i++) + { + if (week_label[i]) + { + delete week_label[i]; + week_label[i] = nullptr; + } + } + + for (int i = 0; i < 31; i++) + { + if (day_label[i]) + { + delete day_label[i]; + day_label[i] = nullptr; + } + } + + if (PullUpAnimatorView != nullptr) + { + PullUpAnimatorView->Stop(); + delete PullUpAnimatorView; + PullUpAnimatorView = nullptr; + } + + FreeImageInfoArray(PullUpimageAnimator_imageInfo, PullUpPaths, PULLUP_ANIMATOR_VIEW_NUM_FRAMES); + + delete group; + group = nullptr; + } + + g_pMainView_WomenHealthView = nullptr; + } + + WomenHealthView *WomenHealthView::GetInstance() + { + return g_pMainView_WomenHealthView; + } + static char *week_Z_str[] = {"一", "二", "三", "四", "五", "六", "日"}; + static char *week_E_str[] = {"MON", "THE", "WED", "THU", "FRI", "SAT", "SUN"}; + + bool WomenHealthView::updata_label(int8_t type) + { + for (int i = 0; i < 31; i++) + { + day_label[i]->SetVisible(false); + } + imageview->SetVisible(false); + + if (type == 1) + { + show_m--; + if (show_m == 0) + { + show_m = 12; + show_y--; + } + } + else + { + show_m++; + if (show_m == 13) + { + show_m = 1; + show_y++; + } + } + uint8_t mon_max_day = 0; + uint8_t is_run = 0; + if (show_y % 4 == 0 && show_y % 100 != 0 || show_y % 400 == 0) + { + is_run = 1; + } + + if (show_m == 2) + { + mon_max_day = 28 + is_run; + } + else if (show_m == 1 || show_m == 3 || show_m == 5 || show_m == 7 || show_m == 8 || show_m == 10 || show_m == 12) + { + mon_max_day = 31; + } + else + { + mon_max_day = 30; + } + + int y = show_y; + int m = show_m; + int week = 0; + { + if (m == 1 || m == 2) + { + m += 12; + y--; + } + week = (1 + 2 * m + 3 * (m + 1) / 5 + y + y / 4 - y / 100 + y / 400) % 7; + } + + char mon[20] = {0}; + sprintf(mon, "%d.%d", show_y, show_m); + mon_label->SetText(mon); + + for (int i = 0; i < mon_max_day; i++) + { + int x = ((i + week) % 7); + int y = ((i + week) / 7); + day_label[i]->SetPosition(58 + 50 * x, 140 + 44 * y); // widget's left position and top position + char day[5]; + sprintf(day, "%d", i + 1); + ; + day_label[i]->SetText(day); + time_t currtime; + time(&currtime); + struct tm *timeinfo; + timeinfo = localtime(&currtime); + int y_ = timeinfo->tm_year + 1900; + int m_ = timeinfo->tm_mon + 1; + int d_ = timeinfo->tm_mday; + if (i + 1 == d_ && show_y == y_ && show_m == m_) + { + imageview->SetPosition(58 + 50 * x, 140 + 44 * y); + imageview->SetVisible(true); + } + day_label[i]->SetVisible(true); + } + RootView::GetInstance()->Invalidate(); + return true; + } + bool WomenHealthView::Label_init() + { + // Add Label to App + uint8_t mon_max_day = 0; + + uint8_t is_run = 0; + time_t currtime; + time(&currtime); + struct tm *timeinfo; + timeinfo = localtime(&currtime); + int y = timeinfo->tm_year + 1900; + int m = timeinfo->tm_mon + 1; + int d = timeinfo->tm_mday; + int h = timeinfo->tm_hour; + int min = timeinfo->tm_min; + int week = timeinfo->tm_wday; + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "%d,%d,%d,%d", y, m, d, week); + if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0) // + { + is_run = 1; + } + + if (m == 2) + { + mon_max_day = 28 + is_run; + } + else if (m == 1 || + m == 3 || + m == 5 || + m == 7 || + m == 8 || + m == 10 || + m == 12) + { + mon_max_day = 31; + } + else + { + mon_max_day = 30; + } + + show_y = y; + show_m = m; + show_d = d; + + if (mon_label == nullptr) + { + mon_label = new UILabel(); + } + mon_label->SetPosition(83, 50); // widget's left position and top position + mon_label->Resize(300, 35); // widget's width and height + mon_label->SetViewId("label1"); // Set style + mon_label->SetStyle(STYLE_TEXT_FONT, 30); + + char mon[20] = {0}; + sprintf(mon, "%d.%d", y, m); + + if (m == 1 || m == 2) + { + m += 12; + y--; + } + week = (1 + 2 * m + 3 * (m + 1) / 5 + y + y / 4 - y / 100 + y / 400) % 7; + + mon_label->SetText(mon); + mon_label->SetLineBreakMode(UILabel::LINE_BREAK_WRAP); + mon_label->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER); + mon_label->SetRollSpeed(0); + mon_label->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30); + + // Add to rootView + group->Add(mon_label); + + for (int i = 0; i < 7; i++) + { + if (week_label[i] == nullptr) + { + week_label[i] = new UILabel(); + } + week_label[i]->SetPosition(58 + 50 * (i), 110); // widget's left position and top position + week_label[i]->Resize(50, 30); // widget's width and height + week_label[i]->SetViewId("label3"); // Set style + week_label[i]->SetStyle(STYLE_TEXT_FONT, 20); + + if (ConfigModel::GetInstance()->GetLanguage() == ZH_CN) + week_label[i]->SetText(week_Z_str[i]); + else + week_label[i]->SetText(week_E_str[i]); + + week_label[i]->SetLineBreakMode(UILabel::LINE_BREAK_WRAP); + week_label[i]->SetTextColor(Color::GetColorFromRGBA(0x66, 0x66, 0x66, 0xff)); + week_label[i]->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER); + week_label[i]->SetRollSpeed(0); + week_label[i]->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 20); + + group->Add(week_label[i]); + week_label[i]->SetVisible(true); + } + // Add Label to App + if (imageview == nullptr) + { + imageview = new UIImageView(); + } + + imageview->SetPosition(58, 140); + imageview->Resize(50, 50); + imageview->SetViewId("image1"); + imageview->SetStyle(STYLE_BACKGROUND_COLOR, 0xffff5a36); + imageview->SetStyle(STYLE_BACKGROUND_OPA, 0xff); + imageview->SetStyle(STYLE_BORDER_RADIUS, 100); + group->Add(imageview); + imageview->SetVisible(false); + + for (int i = 0; i < 31; i++) + { + if (day_label[i] == nullptr) + { + day_label[i] = new UILabel(); + } + + day_label[i]->SetPosition(58, 140); // widget's left position and top position + day_label[i]->Resize(50, 44); // widget's width and height + day_label[i]->SetViewId("label3"); // Set style + day_label[i]->SetStyle(STYLE_TEXT_FONT, 20); + + day_label[i]->SetStyle(STYLE_BORDER_RADIUS, 100); + + day_label[i]->SetLineBreakMode(UILabel::LINE_BREAK_ELLIPSIS); + day_label[i]->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER); + day_label[i]->SetRollSpeed(0); + day_label[i]->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30); + + group->Add(day_label[i]); + day_label[i]->SetVisible(false); + } + for (int i = 0; i < mon_max_day; i++) + { + int x = ((i + week) % 7); + int y = ((i + week) / 7); + day_label[i]->SetPosition(58 + 50 * x, 140 + 44 * y); // widget's left position and top position + char day[5]; + sprintf(day, "%d", i + 1); + ; + day_label[i]->SetText(day); + if (i + 1 == d) + { + imageview->SetPosition(58 + 50 * x, 140 + 44 * y); + imageview->SetVisible(true); + } + day_label[i]->SetVisible(true); + } + + PullUpimageAnimator_imageInfo = CreateImageInfoArray(PullUpPaths, PULLUP_ANIMATOR_VIEW_NUM_FRAMES); + if (PullUpAnimatorView == nullptr) + { + PullUpAnimatorView = new UIImageAnimatorView(); + if (PullUpAnimatorView == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PullUpAnimatorView new fail"); + return false; + } + for (uint8_t i = 0; i < PULLUP_ANIMATOR_VIEW_NUM_FRAMES; i++) + { + // PullUpimageAnimatorInfo[i].imageInfo = ImageCacheManager::GetInstance().LoadSingleRes(PullUpPathsArray[i]); + // PullUpimageAnimatorInfo[i].imageType = IMG_SRC_IMAGE_INFO; + PullUpimageAnimatorInfo[i].imageInfo = PullUpimageAnimator_imageInfo[i]; + // PullUpPathsArray[i]; + PullUpimageAnimatorInfo[i].imageType = IMG_SRC_IMAGE_INFO; + PullUpimageAnimatorInfo[i].pos.x = PULLUP_ANIMATOR_VIEW_X; + PullUpimageAnimatorInfo[i].pos.y = PULLUP_ANIMATOR_VIEW_Y; + PullUpimageAnimatorInfo[i].width = PULLUP_ANIMATOR_VIEW_W; + PullUpimageAnimatorInfo[i].height = PULLUP_ANIMATOR_VIEW_H; + } + PullUpAnimatorView->SetPosition(PULLUP_ANIMATOR_VIEW_X, PULLUP_ANIMATOR_VIEW_Y, PULLUP_ANIMATOR_VIEW_W, PULLUP_ANIMATOR_VIEW_H); + PullUpAnimatorView->SetStyle(STYLE_BACKGROUND_COLOR, 0xffffffff); + PullUpAnimatorView->SetStyle(STYLE_BACKGROUND_OPA, 0xff); + PullUpAnimatorView->SetImageAnimatorSrc(PullUpimageAnimatorInfo, PULLUP_ANIMATOR_VIEW_NUM_FRAMES, PULLUP_ANIMATOR_VIEW_TIME); + PullUpAnimatorView->SetRepeat(true); + PullUpAnimatorView->Start(); + } + group->Add(PullUpAnimatorView); + + return true; + } + + void WomenHealthView::OnStart() + { + group = new UIViewGroup(); + if (group == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "CallingView::UIViewGroup::new group error"); + return; + } + group->SetPosition(0, 0); + group->Resize(VERTICAL_RESOLUTION, HORIZONTAL_RESOLUTION); // 454 : value + group->SetTouchable(true); + group->SetDraggable(true); + group->SetOnDragListener(presenter_); + AddViewToRootContainer(group); + + if (!Label_init()) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "CallingView::UIViewGroup::new group error"); + return; + } + } + } \ No newline at end of file