From 715da3d5703a68d71ca7bcc7535e8896b203e375 Mon Sep 17 00:00:00 2001 From: Caisking <3449750381@qq.com> Date: Sat, 5 Oct 2024 19:27:17 +0800 Subject: [PATCH] =?utf8?q?#886=E6=89=8B=E8=A1=A8=EF=BC=8C=E5=BF=AB?= =?utf8?q?=E6=8D=B7=E8=AE=AD=E7=BB=83=E5=8D=A1=E7=89=87=E4=BF=AE=E6=94=B9?= =?utf8?q?=E9=AA=91=E8=A1=8C=E4=B8=BA=E8=87=AA=E7=94=B1=E8=AE=AD=E7=BB=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../uicomponents/UIComponents.h | 2 +- .../nativeui/traing/Training_UiConfig.h | 1 + .../nativeui/traing/src/TraingPresenter.cpp | 11 +- .../nativeui/traing/src/TraingView.cpp | 563 +++++++++--------- .../training_card/include/Training_CardView.h | 93 +-- .../src/Training_CardPresenter.cpp | 3 +- .../training_card/src/Training_CardView.cpp | 527 ++++++++-------- .../Training/icon_60x60/FreeTraining_60.bin | 3 + .../Training/icon_60x60/FreeTraining_60.png | Bin 0 -> 1056 bytes 9 files changed, 577 insertions(+), 626 deletions(-) create mode 100644 code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/Training/icon_60x60/FreeTraining_60.bin create mode 100644 tools/image_converter_tool/test/hert/Training/icon_60x60/FreeTraining_60.png diff --git a/code/sdk/application/wearable/CustomUIComponentTool/uicomponents/UIComponents.h b/code/sdk/application/wearable/CustomUIComponentTool/uicomponents/UIComponents.h index c1e7facb9..073efd42c 100644 --- a/code/sdk/application/wearable/CustomUIComponentTool/uicomponents/UIComponents.h +++ b/code/sdk/application/wearable/CustomUIComponentTool/uicomponents/UIComponents.h @@ -56,7 +56,7 @@ namespace OHOS // 默认参数的 UILabel 初始化 void InitLabelDefault(UILabelExt *&label, int x, int y, int width, int height, const char *viewId, const char *text, int fontSize = 30, const char *fontName = DEFAULT_VECTOR_FONT_FILENAME); - + // 滚动 bool InitRollLabel(UILabelExt *&label, int left, int top, int width, int height, const char *viewId, UIResourceTextId id, const char *fontName, int fontSize); bool InitLabelExt(UILabelExt *&label, int left, int top, int width, int height, const char *viewId, UIResourceTextId id, const char *fontName, int fontSize); bool InitButtonExt(UILabelButtonExt *&button, int left, int top, int width, int height, const char *viewId, UIResourceTextId id, int fontSize); diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/Training_UiConfig.h b/code/sdk/application/wearable/fd230app/nativeui/traing/Training_UiConfig.h index 181207c2b..54cb68ea3 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/Training_UiConfig.h +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/Training_UiConfig.h @@ -38,6 +38,7 @@ namespace OHOS static constexpr const char *RIDING_60_IMAGE = ICON60 "/Riding_60.bin"; static constexpr const char *RUNNING_60_IMAGE = ICON60 "/Running_60.bin"; static constexpr const char *WALKING_60_IMAGE = ICON60 "/walking_60.bin"; + static constexpr const char *FREE_60_IMAGE = ICON60 "/FreeTraining_60.bin"; // Icons in the icon_80x80 folder static constexpr const char *JUMPROPE_80_IMAGE = ICON80 "/Jumprope_80.bin"; diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/src/TraingPresenter.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/src/TraingPresenter.cpp index b77961b62..fdd7064de 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/src/TraingPresenter.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/src/TraingPresenter.cpp @@ -92,11 +92,6 @@ namespace OHOS NativeAbility::GetInstance().EnterSlice(VIEW_TRAININGNOMAL); TraingModel::GetInstance()->SetSportEvent(STR_EXERCISE_OUTDOORWALKING); } - if (strcmp(view.GetViewId(), BUTTON2) == 0) - { - NativeAbility::GetInstance().EnterSlice(VIEW_TRAININGNOMAL); - TraingModel::GetInstance()->SetSportEvent(STR_EXERCISE_OUTDOORBIKING); - } if (strcmp(view.GetViewId(), BUTTON3) == 0) { NativeAbility::GetInstance().EnterSlice(VIEW_TRAININGNOMAL); @@ -106,7 +101,11 @@ namespace OHOS { NativeAbility::GetInstance().EnterSlice(VIEW_TRAININGMORE); } - // 快捷训练都属于健身类 + if (strcmp(view.GetViewId(), BUTTON2) == 0) { + NativeAbility::GetInstance().EnterSlice(VIEW_TRAININGNOMAL); + TraingModel::GetInstance()->SetSportEvent( + STR_EXERCISE_FREETRAINING); //修改为自由训练 + } TraingModel::GetInstance()->SetSportType(Exercisetype::FITNESS); return true; } diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/src/TraingView.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/src/TraingView.cpp index 566254486..0b049123c 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/src/TraingView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/src/TraingView.cpp @@ -3,242 +3,236 @@ #include "traing/include/TraingModel.h" #include #include -namespace OHOS -{ - // 按钮设置 - static constexpr uint16_t BUTTON_WIDHT = 140; - static constexpr uint16_t BUTTON_HEIGHT = 140; - static constexpr uint16_t BUTTON1_X = 86; - static constexpr uint16_t BUTTON1_Y = 118; - static constexpr uint16_t BUTTON2_X = 236; - static constexpr uint16_t BUTTON2_Y = 118; - static constexpr uint16_t BUTTON3_X = 86; - static constexpr uint16_t BUTTON3_Y = 268; - static constexpr uint16_t BUTTONMORE_X = 236; - static constexpr uint16_t BUTTONMORE_Y = 268; - - // 标签设置 - static constexpr uint16_t LABEL_FONT_SIZE = 30; - static constexpr uint16_t LABEL_X_SIZE = 200; - static constexpr uint16_t LABEL_Y_SIZE = 60; - static constexpr uint16_t TITLE_LABEL_X = 130; - static constexpr uint16_t TITLE_LABEL_Y = 52; - - static constexpr uint16_t BTN1_LABEL_X = 65; - static constexpr uint16_t BTN1_LABEL_Y = 205; - static constexpr uint16_t BTN2_LABEL_X = 206; - static constexpr uint16_t BTN2_LABEL_Y = 205; - static constexpr uint16_t BTN3_LABEL_X = 65; - static constexpr uint16_t BTN3_LABEL_Y = 355; - - // 图片设置 - static constexpr uint16_t BTN_IMAGE_SIZE = 100; - - static constexpr uint16_t BTN1_IMAGE_X = 126; - static constexpr uint16_t BTN1_IMAGE_Y = 148; - - static constexpr uint16_t BTN2_IMAGE_X = 276; - static constexpr uint16_t BTN2_IMAGE_Y = 148; - - static constexpr uint16_t BTN3_IMAGE_X = 129; - static constexpr uint16_t BTN3_IMAGE_Y = 298; - - static constexpr uint16_t BTNMORE_IMAGE_X = 276; - static constexpr uint16_t BTNMORE_IMAGE_Y = 324; - - static TraingView *g_pTraingView{nullptr}; - - TraingView::TraingView() - { - g_pTraingView = this; - TraingModel::GetInstance()->SetEntryType(APPLIST_ENTER); - } - - TraingView::~TraingView() - { - DeInitView(); - g_pTraingView = nullptr; - } - TraingView *TraingView::GetInstance() - { - return g_pTraingView; - } - - /*** - * @description: - * @return - * @brief 添加标签 - */ - bool TraingView::AddLabel() - { - // WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "TraingModel::AddLabel"); - // 初始化标签 - InitLabelExt(title_label, TITLE_LABEL_X, TITLE_LABEL_Y, LABEL_X_SIZE, LABEL_Y_SIZE, "title_label", STR_RAPID_TRAINING, DEFAULT_VECTOR_FONT_FILENAME, LABEL_FONT_SIZE); - - InitLabelExt(btn1_label, BTN1_LABEL_X, BTN1_LABEL_Y, LABEL_X_SIZE, LABEL_Y_SIZE, "btu1_label", STR_EXERCISE_OUTDOORWALKING, DEFAULT_VECTOR_FONT_FILENAME, LABEL_FONT_SIZE); - InitLabelExt(btn2_label, BTN2_LABEL_X, BTN2_LABEL_Y, LABEL_X_SIZE, LABEL_Y_SIZE, "btu2_label", STR_EXERCISE_OUTDOORBIKING, DEFAULT_VECTOR_FONT_FILENAME, LABEL_FONT_SIZE); - InitLabelExt(btn3_label, BTN3_LABEL_X, BTN3_LABEL_Y, LABEL_X_SIZE, LABEL_Y_SIZE, "btu3_label", STR_EXERCISE_OUTDOORRUNNING, DEFAULT_VECTOR_FONT_FILENAME, LABEL_FONT_SIZE); - InitLabelExt(btnmore_label, BTN2_LABEL_X, BTN3_LABEL_Y, LABEL_X_SIZE, LABEL_Y_SIZE, "btumore_label", STR_MORE, DEFAULT_VECTOR_FONT_FILENAME, LABEL_FONT_SIZE); - return true; - } - - bool TraingView::AddButton() - { - InitButton(button1_, BUTTON1_X, BUTTON1_Y, BUTTON_WIDHT, BUTTON_HEIGHT, BUTTON1); - button1_->SetImageSrc(BUTTONGROUND2_IMAGE, BUTTONGROUND2_IMAGE); - UIView::OnClickListener *button1Click = static_cast(TraingPresenter::GetInstance()); - button1_->SetOnClickListener(button1Click); - - InitButton(button2_, BUTTON2_X, BUTTON2_Y, BUTTON_WIDHT, BUTTON_HEIGHT, BUTTON2); - button2_->SetImageSrc(BOUTTONGROUND_IMAGE, BOUTTONGROUND_IMAGE); - UIView::OnClickListener *button2Click = static_cast(TraingPresenter::GetInstance()); - button2_->SetOnClickListener(button2Click); - - InitButton(button3_, BUTTON3_X, BUTTON3_Y, BUTTON_WIDHT, BUTTON_HEIGHT, BUTTON3); - button3_->SetImageSrc(BOUTTONGROUND_IMAGE, BOUTTONGROUND_IMAGE); - UIView::OnClickListener *button3Click = static_cast(TraingPresenter::GetInstance()); - button3_->SetOnClickListener(button3Click); - - InitButton(buttonmore_, BUTTONMORE_X, BUTTONMORE_Y, BUTTON_WIDHT, BUTTON_HEIGHT, BUTTONMORE); - buttonmore_->SetImageSrc(BUTTONGROUND2_IMAGE, BUTTONGROUND2_IMAGE); - UIView::OnClickListener *button4Click = static_cast(TraingPresenter::GetInstance()); - buttonmore_->SetOnClickListener(button4Click); - - return true; - } - /*** - * @description: - * @return - * @brief 添加图片 - */ - bool TraingView::AddImageView() - { - - InitImageView(btn1_image, BTN1_IMAGE_X, BTN1_IMAGE_Y, BTN_IMAGE_SIZE, BTN_IMAGE_SIZE, "btn1_image", WALKING_60_IMAGE); - InitImageView(btn2_image, BTN2_IMAGE_X, BTN2_IMAGE_Y, BTN_IMAGE_SIZE, BTN_IMAGE_SIZE, "btn2_image", RIDING_60_IMAGE); - InitImageView(btn3_image, BTN3_IMAGE_X, BTN3_IMAGE_Y, BTN_IMAGE_SIZE, BTN_IMAGE_SIZE, "btn3_image", RUNNING_60_IMAGE); - InitImageView(btnmore_image, BTNMORE_IMAGE_X, BTNMORE_IMAGE_Y, BTN_IMAGE_SIZE, BTN_IMAGE_SIZE, "btnmore_image", MORE_ICON_IMAGE); - return true; - } - void TraingView::InitView() - { - if (container_ == nullptr) - { - container_ = new UIViewGroup(); - container_->SetPosition(0, 0, 466, 466); - container_->SetStyle(STYLE_BACKGROUND_OPA, 0); - } - - // 初始化按键 - AddButton(); - // 初始化标签 - AddLabel(); - // 初始化图片 - AddImageView(); - - container_->Add(button1_); - container_->Add(button2_); - container_->Add(button3_); - container_->Add(buttonmore_); - - container_->Add(title_label); - container_->Add(btn1_label); - container_->Add(btn2_label); - container_->Add(btn3_label); - container_->Add(btnmore_label); - - container_->Add(btn1_image); - container_->Add(btn2_image); - container_->Add(btn3_image); - container_->Add(btnmore_image); - - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "TraingModel::InitView"); - } - - void TraingView::DeInitView() - { - if(container_) - { - container_->RemoveAll(); - } - - if (buttonmore_ != nullptr) - { - delete buttonmore_; - buttonmore_ = nullptr; - } - if (button1_ != nullptr) - { - delete button1_; - button1_ = nullptr; - } - if (button2_ != nullptr) - { - delete button2_; - button2_ = nullptr; - } - if (button3_ != nullptr) - { - delete button3_; - button3_ = nullptr; - } - if (title_label != nullptr) - { - delete title_label; - title_label = nullptr; - } - if (btn1_label != nullptr) - { - delete btn1_label; - btn1_label = nullptr; - } - if (btn2_label != nullptr) - { - delete btn2_label; - btn2_label = nullptr; - } - if (btn3_label != nullptr) - { - delete btn3_label; - btn3_label = nullptr; - } - if (btnmore_label != nullptr) - { - delete btnmore_label; - btnmore_label = nullptr; - } - if (btn1_image != nullptr) - { - delete btn1_image; - btn1_image = nullptr; - } - if (btn2_image != nullptr) - { - delete btn2_image; - btn2_image = nullptr; - } - if (btn3_image != nullptr) - { - delete btn3_image; - btn3_image = nullptr; - } - if (btnmore_image != nullptr) - { - delete btnmore_image; - btnmore_image = nullptr; - } - } - - // 设置按键监听 - static void SetKeyActListener() - { - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetKeyActListener"); - // 增加按键监听 - RootView::OnKeyActListener *keyactListener = (RootView::OnKeyActListener *)OHOS::TraingPresenter::GetInstance(); - RootView::GetInstance()->SetOnKeyActListener(keyactListener); - } - void TraingView::OnStart() - { +namespace OHOS { +// 按钮设置 +static constexpr uint16_t BUTTON_WIDHT = 140; +static constexpr uint16_t BUTTON_HEIGHT = 140; +static constexpr uint16_t BUTTON1_X = 86; +static constexpr uint16_t BUTTON1_Y = 118; +static constexpr uint16_t BUTTON2_X = 236; +static constexpr uint16_t BUTTON2_Y = 118; +static constexpr uint16_t BUTTON3_X = 86; +static constexpr uint16_t BUTTON3_Y = 268; +static constexpr uint16_t BUTTONMORE_X = 236; +static constexpr uint16_t BUTTONMORE_Y = 268; + +// 标签设置 +static constexpr uint16_t LABEL_FONT_SIZE = 30; +static constexpr uint16_t LABEL_X_SIZE = 120; +static constexpr uint16_t LABEL_Y_SIZE = 60; +static constexpr uint16_t TITLE_LABEL_X = 230; +static constexpr uint16_t TITLE_LABEL_Y = 52; + +static constexpr uint16_t BTN1_LABEL_X = 95; +static constexpr uint16_t BTN1_LABEL_Y = 205; +static constexpr uint16_t BTN2_LABEL_X = 236; +static constexpr uint16_t BTN2_LABEL_Y = 205; +static constexpr uint16_t BTN3_LABEL_X = 95; +static constexpr uint16_t BTN3_LABEL_Y = 355; + +// 图片设置 +static constexpr uint16_t BTN_IMAGE_SIZE = 100; + +static constexpr uint16_t BTN1_IMAGE_X = 126; +static constexpr uint16_t BTN1_IMAGE_Y = 148; + +static constexpr uint16_t BTN2_IMAGE_X = 276; +static constexpr uint16_t BTN2_IMAGE_Y = 148; + +static constexpr uint16_t BTN3_IMAGE_X = 129; +static constexpr uint16_t BTN3_IMAGE_Y = 298; + +static constexpr uint16_t BTNMORE_IMAGE_X = 276; +static constexpr uint16_t BTNMORE_IMAGE_Y = 324; + +static TraingView *g_pTraingView{nullptr}; + +TraingView::TraingView() { + g_pTraingView = this; + TraingModel::GetInstance()->SetEntryType(APPLIST_ENTER); +} + +TraingView::~TraingView() { + DeInitView(); + g_pTraingView = nullptr; +} +TraingView *TraingView::GetInstance() { return g_pTraingView; } + +/*** + * @description: + * @return + * @brief 添加标签 + */ +bool TraingView::AddLabel() { + // WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "TraingModel::AddLabel"); + // 初始化标签 + InitRollLabel(title_label, 83, 50, 300, 35, "title_label", STR_RAPID_TRAINING, + DEFAULT_VECTOR_FONT_FILENAME, LABEL_FONT_SIZE); + + InitRollLabel(btn1_label, BTN1_LABEL_X, BTN1_LABEL_Y, LABEL_X_SIZE, + LABEL_Y_SIZE, "btu1_label", STR_EXERCISE_OUTDOORWALKING, + DEFAULT_VECTOR_FONT_FILENAME, LABEL_FONT_SIZE); + InitRollLabel(btn2_label, BTN2_LABEL_X, BTN2_LABEL_Y, LABEL_X_SIZE, + LABEL_Y_SIZE, "btu2_label", STR_EXERCISE_FREETRAINING, + DEFAULT_VECTOR_FONT_FILENAME, LABEL_FONT_SIZE); + InitRollLabel(btn3_label, BTN3_LABEL_X, BTN3_LABEL_Y, LABEL_X_SIZE, + LABEL_Y_SIZE, "btu3_label", STR_EXERCISE_OUTDOORRUNNING, + DEFAULT_VECTOR_FONT_FILENAME, LABEL_FONT_SIZE); + InitRollLabel(btnmore_label, BTN2_LABEL_X + 10, BTN3_LABEL_Y, LABEL_X_SIZE, + LABEL_Y_SIZE, "btumore_label", STR_MORE, + DEFAULT_VECTOR_FONT_FILENAME, LABEL_FONT_SIZE); + return true; +} + +bool TraingView::AddButton() { + InitButton(button1_, BUTTON1_X, BUTTON1_Y, BUTTON_WIDHT, BUTTON_HEIGHT, + BUTTON1); + button1_->SetImageSrc(BUTTONGROUND2_IMAGE, BUTTONGROUND2_IMAGE); + UIView::OnClickListener *button1Click = + static_cast(TraingPresenter::GetInstance()); + button1_->SetOnClickListener(button1Click); + + InitButton(button2_, BUTTON2_X, BUTTON2_Y, BUTTON_WIDHT, BUTTON_HEIGHT, + BUTTON2); + button2_->SetImageSrc(BOUTTONGROUND_IMAGE, BOUTTONGROUND_IMAGE); + UIView::OnClickListener *button2Click = + static_cast(TraingPresenter::GetInstance()); + button2_->SetOnClickListener(button2Click); + + InitButton(button3_, BUTTON3_X, BUTTON3_Y, BUTTON_WIDHT, BUTTON_HEIGHT, + BUTTON3); + button3_->SetImageSrc(BOUTTONGROUND_IMAGE, BOUTTONGROUND_IMAGE); + UIView::OnClickListener *button3Click = + static_cast(TraingPresenter::GetInstance()); + button3_->SetOnClickListener(button3Click); + + InitButton(buttonmore_, BUTTONMORE_X, BUTTONMORE_Y, BUTTON_WIDHT, + BUTTON_HEIGHT, BUTTONMORE); + buttonmore_->SetImageSrc(BUTTONGROUND2_IMAGE, BUTTONGROUND2_IMAGE); + UIView::OnClickListener *button4Click = + static_cast(TraingPresenter::GetInstance()); + buttonmore_->SetOnClickListener(button4Click); + + return true; +} +/*** + * @description: + * @return + * @brief 添加图片 + */ +bool TraingView::AddImageView() { + + InitImageView(btn1_image, BTN1_IMAGE_X, BTN1_IMAGE_Y, BTN_IMAGE_SIZE, + BTN_IMAGE_SIZE, "btn1_image", WALKING_60_IMAGE); + InitImageView(btn2_image, BTN2_IMAGE_X, BTN2_IMAGE_Y, BTN_IMAGE_SIZE, + BTN_IMAGE_SIZE, "btn2_image", FREE_60_IMAGE); + InitImageView(btn3_image, BTN3_IMAGE_X, BTN3_IMAGE_Y, BTN_IMAGE_SIZE, + BTN_IMAGE_SIZE, "btn3_image", RUNNING_60_IMAGE); + InitImageView(btnmore_image, BTNMORE_IMAGE_X, BTNMORE_IMAGE_Y, BTN_IMAGE_SIZE, + BTN_IMAGE_SIZE, "btnmore_image", MORE_ICON_IMAGE); + return true; +} +void TraingView::InitView() { + if (container_ == nullptr) { + container_ = new UIViewGroup(); + container_->SetPosition(0, 0, 466, 466); + container_->SetStyle(STYLE_BACKGROUND_OPA, 0); + } + + // 初始化按键 + AddButton(); + // 初始化标签 + AddLabel(); + // 初始化图片 + AddImageView(); + + container_->Add(button1_); + container_->Add(button2_); + container_->Add(button3_); + container_->Add(buttonmore_); + + container_->Add(title_label); + container_->Add(btn1_label); + container_->Add(btn2_label); + container_->Add(btn3_label); + container_->Add(btnmore_label); + + container_->Add(btn1_image); + container_->Add(btn2_image); + container_->Add(btn3_image); + container_->Add(btnmore_image); + + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "TraingModel::InitView"); +} + +void TraingView::DeInitView() { + if (container_) { + container_->RemoveAll(); + } + + if (buttonmore_ != nullptr) { + delete buttonmore_; + buttonmore_ = nullptr; + } + if (button1_ != nullptr) { + delete button1_; + button1_ = nullptr; + } + if (button2_ != nullptr) { + delete button2_; + button2_ = nullptr; + } + if (button3_ != nullptr) { + delete button3_; + button3_ = nullptr; + } + if (title_label != nullptr) { + delete title_label; + title_label = nullptr; + } + if (btn1_label != nullptr) { + delete btn1_label; + btn1_label = nullptr; + } + if (btn2_label != nullptr) { + delete btn2_label; + btn2_label = nullptr; + } + if (btn3_label != nullptr) { + delete btn3_label; + btn3_label = nullptr; + } + if (btnmore_label != nullptr) { + delete btnmore_label; + btnmore_label = nullptr; + } + if (btn1_image != nullptr) { + delete btn1_image; + btn1_image = nullptr; + } + if (btn2_image != nullptr) { + delete btn2_image; + btn2_image = nullptr; + } + if (btn3_image != nullptr) { + delete btn3_image; + btn3_image = nullptr; + } + if (btnmore_image != nullptr) { + delete btnmore_image; + btnmore_image = nullptr; + } +} + +// 设置按键监听 +static void SetKeyActListener() { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetKeyActListener"); + // 增加按键监听 + RootView::OnKeyActListener *keyactListener = + (RootView::OnKeyActListener *)OHOS::TraingPresenter::GetInstance(); + RootView::GetInstance()->SetOnKeyActListener(keyactListener); +} +void TraingView::OnStart() { #if 0 printf(" data--training1_Text: %s\n", data->training1_Text.c_str()); printf(" data--training1_Image: %s\n", data->training1_Image.c_str()); @@ -247,55 +241,50 @@ namespace OHOS printf(" data--training3_Text: %s\n", data->training3_Text.c_str()); printf(" data--training3_Image: %s\n", data->training3_Image.c_str()); #endif - container_ = new UIViewGroup(); - if (container_ == nullptr) - { - return; - } - container_->SetPosition(0, 0); - container_->SetWidth(Screen::GetInstance().GetWidth()); - container_->SetHeight(Screen::GetInstance().GetHeight()); - - // 创建 draglistener 实例并设置为拖动监听器 - UIView::OnDragListener *draglistener = static_cast(TraingPresenter::GetInstance()); - if (draglistener == nullptr) - { - return; - } - container_->SetOnDragListener(draglistener); - container_->SetTouchable(true); - container_->SetDraggable(true); - - InitView(); - - SetContainerView(container_); - // 增加按键监听 - SetKeyActListener(); - } - - void TraingView::OnSetUpView() - { - View::OnSetUpView(); - Draw(); - } - - void TraingView::OnTearDownView() - { - View::OnTearDownView(); - return; - } - - void TraingView::OnStop() - { - View::OnStop(); - - if (container_ != nullptr) - { - container_->RemoveAll(); - delete container_; - container_ = nullptr; - } - RootView::GetInstance()->RemoveAll(); - return; - } + container_ = new UIViewGroup(); + if (container_ == nullptr) { + return; + } + container_->SetPosition(0, 0); + container_->SetWidth(Screen::GetInstance().GetWidth()); + container_->SetHeight(Screen::GetInstance().GetHeight()); + + // 创建 draglistener 实例并设置为拖动监听器 + UIView::OnDragListener *draglistener = + static_cast(TraingPresenter::GetInstance()); + if (draglistener == nullptr) { + return; + } + container_->SetOnDragListener(draglistener); + container_->SetTouchable(true); + container_->SetDraggable(true); + + InitView(); + + SetContainerView(container_); + // 增加按键监听 + SetKeyActListener(); +} + +void TraingView::OnSetUpView() { + View::OnSetUpView(); + Draw(); +} + +void TraingView::OnTearDownView() { + View::OnTearDownView(); + return; +} + +void TraingView::OnStop() { + View::OnStop(); + + if (container_ != nullptr) { + container_->RemoveAll(); + delete container_; + container_ = nullptr; + } + RootView::GetInstance()->RemoveAll(); + return; } +} // namespace OHOS diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/include/Training_CardView.h b/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/include/Training_CardView.h index 74a89df5d..69375a798 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/include/Training_CardView.h +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/include/Training_CardView.h @@ -3,65 +3,66 @@ #include "BaseView.h" #include "View.h" -#include -#include "components/ui_view_group.h" -#include "components/ui_label.h" -#include "components/ui_label_ext.h" -#include "components/ui_image_view.h" #include "components/ui_button.h" +#include "components/ui_card_page.h" +#include "components/ui_chart.h" #include "components/ui_image_animator.h" +#include "components/ui_image_view.h" +#include "components/ui_label.h" #include "components/ui_label_button_ext.h" -#include "components/ui_chart.h" -#include "wearable_log.h" +#include "components/ui_label_ext.h" +#include "components/ui_view_group.h" #include "ohos_types.h" -#include "components/ui_card_page.h" - -namespace OHOS -{ -#define BUTTON1 "button1" // 按键1 -#define BUTTON2 "button2" // 按键2 -#define BUTTON3 "button3" // 按键3 -#define BUTTONMORE "button4" // 按键 更多 +#include "traing/training_card/include/Training_CardView.h" +#include "wearable_log.h" +#include +namespace OHOS { - class Training_CardView : public UICardPage - { +#define BUTTON1 "button1" // 按键1 +#define BUTTON2 "button2" // 按键2 +#define BUTTON3 "button3" // 按键3 +#define BUTTONMORE "buttonmore" // 按键 更多 - public: - Training_CardView(); - virtual ~Training_CardView(); - static Training_CardView *GetInstance(void); +class TraingPresenter; +class Training_CardView : public UICardPage { +public: + Training_CardView(); + virtual ~Training_CardView(); + static Training_CardView *GetInstance(void); - bool InitView(); - void DeInit(); + void PreLoad(void) override; + void UnLoad(void) override; - bool AddButton(); - bool InitImage(); - bool InitLable(); + bool AddLabel(); + bool AddButton(); + bool AddImageView(); + void InitView(); + void DeInitView(); - void PreLoad(void) override; - void UnLoad(void) override; + UIView *GetView(); + bool InitPage(void); - bool LoadImage(UIImageView *view, uint32_t resId); - bool LoadImage(UILabelButtonExt *view, uint32_t resId); +private: + Training_CardView(Training_CardView &&) = delete; + Training_CardView &operator=(Training_CardView &&) = delete; - private: - UIView::OnDragListener *draglistener{nullptr}; - Training_CardView(Training_CardView &&) = delete; - Training_CardView &operator=(Training_CardView &&) = delete; + UIButton *buttonmore_ = nullptr; + UIButton *button1_ = nullptr; + UIButton *button2_ = nullptr; + UIButton *button3_ = nullptr; - UILabelButtonExt *Button1 = nullptr; - UILabelButtonExt *Button2 = nullptr; - UILabelButtonExt *Button3 = nullptr; - UILabelButtonExt *ButtonMore = nullptr; + UILabelExt *title_label = nullptr; + UILabelExt *btn1_label = nullptr; + UILabelExt *btn2_label = nullptr; + UILabelExt *btn3_label = nullptr; + UILabelExt *btnmore_label = nullptr; - UILabelExt *titleLabel = nullptr; - UIImageView *image1 = nullptr; - UIImageView *image2 = nullptr; - UIImageView *image3 = nullptr; - UIImageView *imagemore = nullptr; + UIImageView *btn1_image = nullptr; + UIImageView *btn2_image = nullptr; + UIImageView *btn3_image = nullptr; + UIImageView *btnmore_image = nullptr; - bool viewiInitStatus{false}; - bool resLoadStatus{false}; - }; + bool viewiInitStatus{false}; +}; } // namespace OHOS #endif // Traing_PRESENTER_H diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/src/Training_CardPresenter.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/src/Training_CardPresenter.cpp index d1b958df1..9007204ad 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/src/Training_CardPresenter.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/src/Training_CardPresenter.cpp @@ -50,7 +50,8 @@ namespace OHOS { NativeAbility::GetInstance().EnterSlice(VIEW_TRAININGNOMAL); // NativeAbility::GetInstance().ChangeSlice(VIEW_TRAININGNOMAL); - TraingModel::GetInstance()->SetSportEvent(STR_EXERCISE_OUTDOORBIKING); + TraingModel::GetInstance()->SetSportEvent( + STR_EXERCISE_FREETRAINING); } if (strcmp(view.GetViewId(), BUTTON3) == 0) { diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/src/Training_CardView.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/src/Training_CardView.cpp index 582143094..7a2fa6c46 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/src/Training_CardView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_card/src/Training_CardView.cpp @@ -1,296 +1,253 @@ #include "traing/training_card/include/Training_CardView.h" - -#include "common/image_cache_manager.h" -#include "components/ui_label_ext.h" -#include "ui_resource_string.h" -#include "UiConfig.h" -#include "ui_resource_image.h" -#include -#include "components/ui_button.h" -#include "components/ui_view_group.h" -#include "common/image_cache_manager.h" -#include "MainPresenterSample.h" -#include "traing/training_card/include/Training_CardPresenter.h" +#include "traing/Training_UiConfig.h" #include "traing/include/TraingModel.h" +#include "traing/training_card/include/Training_CardPresenter.h" #include "uicomponents/UIComponents.h" -#include "traing/Training_UiConfig.h" - -namespace OHOS -{ - static Training_CardView *g_pTraining_CardView{nullptr}; - std::string file = TRAINING_IAMGES; - Training_CardView::Training_CardView() - { - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Training_CardView::Training_CardView"); - SetPosition(0, 0, HORIZONTAL_RESOLUTION, VERTICAL_RESOLUTION); - g_pTraining_CardView = this; - } - - Training_CardView::~Training_CardView() - { - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Training_CardView::~Training_CardView"); - RemoveAll(); - DeInit(); - g_pTraining_CardView = nullptr; - } - - Training_CardView *Training_CardView::GetInstance() - { - return g_pTraining_CardView; - } - bool Training_CardView::InitLable() - { - // 初始化标签 - InitLabelExt(titleLabel, 130, 52, 200, 60, "title_label", STR_RAPID_TRAINING, DEFAULT_VECTOR_FONT_FILENAME, 30); - Add(titleLabel); - return true; - } - /* -------------------------------------------------------------------------- */ - // 加载图片函数(针对UILabelButtonExt) - bool Training_CardView::LoadImage(UILabelButtonExt *view, uint32_t resId) - { - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "TrainingView LoadImage: %s, resID=0x%x", TRAINING_IAMGES, resId); - ImageInfo *image = ImageCacheManager::GetInstance().LoadOneInMultiRes(resId, file); - if (image == nullptr) - { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Training_CardView::LoadImage %x fail", resId); - return false; - } - if (view == nullptr) - { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "view is null"); - return false; - } - view->SetImageSrc(image, image); - return true; - } - - // 加载图片函数(针对UIImageView) - bool Training_CardView::LoadImage(UIImageView *view, uint32_t resId) - { - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "TrainingView LoadImage: %s, resID=0x%x", TRAINING_IAMGES, resId); - ImageInfo *image = ImageCacheManager::GetInstance().LoadOneInMultiRes(resId, file); - if (image == nullptr) - { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Training_CardView::LoadImage %x fail", resId); - return false; - } - if (view == nullptr) - { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "view is null"); - return false; - } - view->SetSrc(image); // Assuming SetSrc is the correct function for UIImageView - return true; - } - - bool Training_CardView::AddButton() - { - struct ButtonInfo - { - UIResourceTextId textid; - char *viewid; - uint32_t defaultImgSrc; - UILabelButtonExt *button; - uint16_t posX; - uint16_t posY; - }; - - ButtonInfo buttons[] = { - {STR_EXERCISE_OUTDOORWALKING, BUTTON1, TRAINING_BUTTONGROUND2, Button1, 86, 118}, - {STR_EXERCISE_OUTDOORBIKING, BUTTON2, TRAINING_BOUTTONGROUND, Button2, 236, 118}, - {STR_EXERCISE_OUTDOORRUNNING, BUTTON3, TRAINING_BOUTTONGROUND, Button3, 86, 268}, - {STR_MORE, BUTTONMORE, TRAINING_MORE, ButtonMore, 236, 268}}; - - for (auto &buttonInfo : buttons) - { - - buttonInfo.button = new UILabelButtonExt(); - if (buttonInfo.button == nullptr) - { - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "buttonInfo.button is NULL"); - } - - buttonInfo.button->SetPosition(buttonInfo.posX, buttonInfo.posY); - buttonInfo.button->Resize(140, 140); - // WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Id:[%s]", buttonInfo.viewid); - buttonInfo.button->SetTextId(buttonInfo.textid); - buttonInfo.button->SetLabelPosition(0, 70); - buttonInfo.button->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 25); - buttonInfo.button->SetStyleForState(STYLE_BACKGROUND_COLOR, 0xff19ff41, UIButton::PRESSED); - buttonInfo.button->SetStyleForState(STYLE_BORDER_COLOR, 0xff0b1928, UIButton::PRESSED); - buttonInfo.button->SetViewId(buttonInfo.viewid); - UIView::OnClickListener *clickListener = (UIView::OnClickListener *)OHOS::TraingOnClickListener::GetInstance(); - if (clickListener == nullptr) - { - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AddButton::OnStart clickListener NULL"); - return false; - } - buttonInfo.button->SetOnClickListener(clickListener); - // 根据按钮的 viewid 分配给对应的成员变量 - if (strcmp(buttonInfo.viewid, BUTTON1) == 0) - { - Button1 = buttonInfo.button; - } - else if (strcmp(buttonInfo.viewid, BUTTON2) == 0) - { - Button2 = buttonInfo.button; - } - else if (strcmp(buttonInfo.viewid, BUTTON3) == 0) - { - Button3 = buttonInfo.button; - } - else if (strcmp(buttonInfo.viewid, BUTTONMORE) == 0) - { - ButtonMore = buttonInfo.button; - } - } - - Add(Button1); - Add(Button2); - Add(Button3); - Add(ButtonMore); - return true; - } - - bool Training_CardView::InitImage() - { - struct ImageInfo - { - UIImageView *image; - const int imagePath; - uint16_t posX; - uint16_t posY; - const char *viewId; - }; - - ImageInfo images[] = { - {image1, TRAINING_WALKING_BIG, 126, 148, "image3"}, - {image2, TRAINING_RIDING_BIG2, 276, 148, "image2"}, - {image3, TRAINING_RUNNING_BIG, 126, 298, "image1"}}; - - for (auto &imageInfo : images) - { - imageInfo.image = new UIImageView(); - if (imageInfo.image == nullptr) - { - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "imageInfo.image is NULL"); - } - imageInfo.image->SetPosition(imageInfo.posX, imageInfo.posY); - imageInfo.image->Resize(100, 100); - - imageInfo.image->SetViewId(imageInfo.viewId); - // Add(imageInfo.image); - } - - image1 = images[0].image; - image2 = images[1].image; - image3 = images[2].image; - - Add(image1); - Add(image2); - Add(image3); - - return true; - } - /* -------------------------------------------------------------------------- */ - bool Training_CardView::InitView() - { - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Training_CardView::InitView()"); - if (!InitLable()) - { - printf("InitLable error!\n"); - }; - if (!AddButton()) - { - printf("AddButton error!\n"); - }; - if (!InitImage()) - { - printf("InitImage error!\n"); - }; - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Training_CardView::InitView() is ok"); - // SetCoverable(true); - return true; - } - - void Training_CardView::DeInit() - { - UIImageView *imageViews[] = {image1, image2, image3}; - UIButton *buttons[] = {ButtonMore, Button1, Button3, Button2}; - - for (auto &imageView : imageViews) - { - if (imageView != nullptr) - { - delete imageView; - imageView = nullptr; - } - } - - for (auto &button : buttons) - { - if (button != nullptr) - { - delete button; - button = nullptr; - } - } +#include +#include + +namespace OHOS { +// 按钮设置 +static constexpr uint16_t BUTTON_WIDHT = 140; +static constexpr uint16_t BUTTON_HEIGHT = 140; +static constexpr uint16_t BUTTON1_X = 86; +static constexpr uint16_t BUTTON1_Y = 118; +static constexpr uint16_t BUTTON2_X = 236; +static constexpr uint16_t BUTTON2_Y = 118; +static constexpr uint16_t BUTTON3_X = 86; +static constexpr uint16_t BUTTON3_Y = 268; +static constexpr uint16_t BUTTONMORE_X = 236; +static constexpr uint16_t BUTTONMORE_Y = 268; + +// 标签设置 +static constexpr uint16_t LABEL_FONT_SIZE = 30; +static constexpr uint16_t LABEL_X_SIZE = 120; +static constexpr uint16_t LABEL_Y_SIZE = 60; +static constexpr uint16_t TITLE_LABEL_X = 230; +static constexpr uint16_t TITLE_LABEL_Y = 52; + +static constexpr uint16_t BTN1_LABEL_X = 95; +static constexpr uint16_t BTN1_LABEL_Y = 205; +static constexpr uint16_t BTN2_LABEL_X = 236; +static constexpr uint16_t BTN2_LABEL_Y = 205; +static constexpr uint16_t BTN3_LABEL_X = 95; +static constexpr uint16_t BTN3_LABEL_Y = 355; + +// 图片设置 +static constexpr uint16_t BTN_IMAGE_SIZE = 100; +static constexpr uint16_t BTN1_IMAGE_X = 126; +static constexpr uint16_t BTN1_IMAGE_Y = 148; + +static constexpr uint16_t BTN2_IMAGE_X = 276; +static constexpr uint16_t BTN2_IMAGE_Y = 148; + +static constexpr uint16_t BTN3_IMAGE_X = 129; +static constexpr uint16_t BTN3_IMAGE_Y = 298; + +static constexpr uint16_t BTNMORE_IMAGE_X = 276; +static constexpr uint16_t BTNMORE_IMAGE_Y = 324; + +static Training_CardView *g_pTraining_CardView{nullptr}; + +Training_CardView::Training_CardView() { + g_pTraining_CardView = this; + SetPosition(0, 0, HORIZONTAL_RESOLUTION, VERTICAL_RESOLUTION); +} - if (titleLabel != nullptr) - { - delete titleLabel; - titleLabel = nullptr; - } - } +Training_CardView::~Training_CardView() { + DeInitView(); + g_pTraining_CardView = nullptr; +} +Training_CardView *Training_CardView::GetInstance() { + return g_pTraining_CardView; +} - void Training_CardView::PreLoad(void) - { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Training_CardView::PreLoad"); +/*** + * @description: + * @return + * @brief 添加标签 + */ +bool Training_CardView::AddLabel() { + // WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "TraingModel::AddLabel"); + // 初始化标签 + InitRollLabel(title_label, 83, 50, 300, 35, "title_label", STR_RAPID_TRAINING, + DEFAULT_VECTOR_FONT_FILENAME, LABEL_FONT_SIZE); + + InitRollLabel(btn1_label, BTN1_LABEL_X, BTN1_LABEL_Y, LABEL_X_SIZE, + LABEL_Y_SIZE, "btu1_label", STR_EXERCISE_OUTDOORWALKING, + DEFAULT_VECTOR_FONT_FILENAME, LABEL_FONT_SIZE); + InitRollLabel(btn2_label, BTN2_LABEL_X, BTN2_LABEL_Y, LABEL_X_SIZE, + LABEL_Y_SIZE, "btu2_label", STR_EXERCISE_FREETRAINING, + DEFAULT_VECTOR_FONT_FILENAME, LABEL_FONT_SIZE); + InitRollLabel(btn3_label, BTN3_LABEL_X, BTN3_LABEL_Y, LABEL_X_SIZE, + LABEL_Y_SIZE, "btu3_label", STR_EXERCISE_OUTDOORRUNNING, + DEFAULT_VECTOR_FONT_FILENAME, LABEL_FONT_SIZE); + InitRollLabel(btnmore_label, BTN2_LABEL_X + 10, BTN3_LABEL_Y, LABEL_X_SIZE, + LABEL_Y_SIZE, "btumore_label", STR_MORE, + DEFAULT_VECTOR_FONT_FILENAME, LABEL_FONT_SIZE); + return true; +} - if (!viewiInitStatus) - { - // 加载组件 ,加载imagecache - InitView(); - viewiInitStatus = true; - } - if (!resLoadStatus) - { - LoadImage(image1, TRAINING_WALKING_BIG); - LoadImage(image2, TRAINING_RIDING_BIG2); - LoadImage(image3, TRAINING_RUNNING_BIG); +bool Training_CardView::AddButton() { + InitButton(button1_, BUTTON1_X, BUTTON1_Y, BUTTON_WIDHT, BUTTON_HEIGHT, + BUTTON1); + button1_->SetImageSrc(BUTTONGROUND2_IMAGE, BUTTONGROUND2_IMAGE); + UIView::OnClickListener *button1Click = + static_cast( + TraingOnClickListener::GetInstance()); + button1_->SetOnClickListener(button1Click); + + InitButton(button2_, BUTTON2_X, BUTTON2_Y, BUTTON_WIDHT, BUTTON_HEIGHT, + BUTTON2); + button2_->SetImageSrc(BOUTTONGROUND_IMAGE, BOUTTONGROUND_IMAGE); + UIView::OnClickListener *button2Click = + static_cast( + TraingOnClickListener::GetInstance()); + button2_->SetOnClickListener(button2Click); + + InitButton(button3_, BUTTON3_X, BUTTON3_Y, BUTTON_WIDHT, BUTTON_HEIGHT, + BUTTON3); + button3_->SetImageSrc(BOUTTONGROUND_IMAGE, BOUTTONGROUND_IMAGE); + UIView::OnClickListener *button3Click = + static_cast( + TraingOnClickListener::GetInstance()); + button3_->SetOnClickListener(button3Click); + + InitButton(buttonmore_, BUTTONMORE_X, BUTTONMORE_Y, BUTTON_WIDHT, + BUTTON_HEIGHT, BUTTONMORE); + buttonmore_->SetImageSrc(BUTTONGROUND2_IMAGE, BUTTONGROUND2_IMAGE); + UIView::OnClickListener *button4Click = + static_cast( + TraingOnClickListener::GetInstance()); + buttonmore_->SetOnClickListener(button4Click); + + return true; +} +/*** + * @description: + * @return + * @brief 添加图片 + */ +bool Training_CardView::AddImageView() { + + InitImageView(btn1_image, BTN1_IMAGE_X, BTN1_IMAGE_Y, BTN_IMAGE_SIZE, + BTN_IMAGE_SIZE, "btn1_image", WALKING_60_IMAGE); + InitImageView(btn2_image, BTN2_IMAGE_X, BTN2_IMAGE_Y, BTN_IMAGE_SIZE, + BTN_IMAGE_SIZE, "btn2_image", FREE_60_IMAGE); + InitImageView(btn3_image, BTN3_IMAGE_X, BTN3_IMAGE_Y, BTN_IMAGE_SIZE, + BTN_IMAGE_SIZE, "btn3_image", RUNNING_60_IMAGE); + InitImageView(btnmore_image, BTNMORE_IMAGE_X, BTNMORE_IMAGE_Y, BTN_IMAGE_SIZE, + BTN_IMAGE_SIZE, "btnmore_image", MORE_ICON_IMAGE); + return true; +} - LoadImage(Button1, TRAINING_BUTTONGROUND2); - LoadImage(Button2, TRAINING_BOUTTONGROUND); - LoadImage(Button3, TRAINING_BOUTTONGROUND); - LoadImage(ButtonMore, TRAINING_MORE); - resLoadStatus = true; - } - } +void Training_CardView::DeInitView() { + + RemoveAll(); + + if (buttonmore_ != nullptr) { + delete buttonmore_; + buttonmore_ = nullptr; + } + if (button1_ != nullptr) { + delete button1_; + button1_ = nullptr; + } + if (button2_ != nullptr) { + delete button2_; + button2_ = nullptr; + } + if (button3_ != nullptr) { + delete button3_; + button3_ = nullptr; + } + if (title_label != nullptr) { + delete title_label; + title_label = nullptr; + } + if (btn1_label != nullptr) { + delete btn1_label; + btn1_label = nullptr; + } + if (btn2_label != nullptr) { + delete btn2_label; + btn2_label = nullptr; + } + if (btn3_label != nullptr) { + delete btn3_label; + btn3_label = nullptr; + } + if (btnmore_label != nullptr) { + delete btnmore_label; + btnmore_label = nullptr; + } + if (btn1_image != nullptr) { + delete btn1_image; + btn1_image = nullptr; + } + if (btn2_image != nullptr) { + delete btn2_image; + btn2_image = nullptr; + } + if (btn3_image != nullptr) { + delete btn3_image; + btn3_image = nullptr; + } + if (btnmore_image != nullptr) { + delete btnmore_image; + btnmore_image = nullptr; + } +} - void Training_CardView::UnLoad(void) - { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Training_CardView::UnLoad"); - if (resLoadStatus) - { - ImageInfo *img = nullptr; - image1->SetSrc(img); - image2->SetSrc(img); - image3->SetSrc(img); +bool Training_CardView::InitPage(void) { + // 初始化按键 + if (AddButton() != true) { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, + "Training_CardView::InitPage AddButton failed"); + return false; + } + // 初始化标签 + if (AddLabel() != true) { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, + "Training_CardView::InitPage AddLabel failed"); + return false; + } + // 初始化图片 + if (AddImageView() != true) { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, + "Training_CardView::InitPage AddImageView failed"); + return false; + } + + Add(button1_); + Add(button2_); + Add(button3_); + Add(buttonmore_); + + Add(title_label); + + Add(btn1_label); + Add(btn2_label); + Add(btn3_label); + Add(btnmore_label); + + Add(btn1_image); + Add(btn2_image); + Add(btn3_image); + Add(btnmore_image); + + return true; +} +void Training_CardView::PreLoad(void) { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Training_CardView::PreLoad"); + if (!viewiInitStatus) { + InitPage(); + viewiInitStatus = true; + } +} - Button1->SetImageSrc(img, img); - Button2->SetImageSrc(img, img); - Button3->SetImageSrc(img, img); - ButtonMore->SetImageSrc(img, img); - // ImageCacheManager::GetInstance().UnloadAllInMultiRes(TRAINING_IAMGES); - ImageCacheManager::GetInstance().UnloadOneInMultiRes(TRAINING_WALKING_BIG, TRAINING_IAMGES); - ImageCacheManager::GetInstance().UnloadOneInMultiRes(TRAINING_RIDING_BIG2, TRAINING_IAMGES); - ImageCacheManager::GetInstance().UnloadOneInMultiRes(TRAINING_RUNNING_BIG, TRAINING_IAMGES); - ImageCacheManager::GetInstance().UnloadOneInMultiRes(TRAINING_BUTTONGROUND2, TRAINING_IAMGES); - ImageCacheManager::GetInstance().UnloadOneInMultiRes(TRAINING_BOUTTONGROUND, TRAINING_IAMGES); - ImageCacheManager::GetInstance().UnloadOneInMultiRes(TRAINING_MORE, TRAINING_IAMGES); - resLoadStatus = false; - } - } +void Training_CardView::UnLoad(void) { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Training_CardView::UnLoad"); } +} // namespace OHOS diff --git a/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/Training/icon_60x60/FreeTraining_60.bin b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/Training/icon_60x60/FreeTraining_60.bin new file mode 100644 index 000000000..c01630270 --- /dev/null +++ b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/Training/icon_60x60/FreeTraining_60.bin @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:137ac43eb82e53b4c8bbab2907e60182ab10da596aa29b06abaf1afd2cc5ea6c +size 2424 diff --git a/tools/image_converter_tool/test/hert/Training/icon_60x60/FreeTraining_60.png b/tools/image_converter_tool/test/hert/Training/icon_60x60/FreeTraining_60.png new file mode 100644 index 0000000000000000000000000000000000000000..baf9abc512e330d321c1cfb90961ad9ba3a9cdf4 GIT binary patch literal 1056 zcmV+*1mF9KP)rEphGX~FQTF921b(DAN*aMF z1imLdrS-gGCu&~U+E!Lq!-kF-D?p|Y_J&S@N@(*Ygsp+|x;TJ%YzSGhpgbY;&O6C0 zXe8jmymMRl`iXS>A-8{XVxXi$rZP@D496CS8YA0*U1K~h>5zadqmjxL9Rkp0G*ZbZ zfn=ivx4sNb2m9G)6v+_5Lr&Ae&Pz^_Bx!gC?bdLtd=`_-PStQu^T64VC<7L);Tg5t z!*Gs0JMnewYT)+ORZrWT=I51`;bQMAyhLRz%l1DR>>t+X57JG$0m8Xv z?&}u%z(0mfV@wA9<5`oSV$H54a46SY58?)CoZFHI>KHi9nm|35>xMj0o(Z*U8WVGg zcpe)4>_T-RBj+_NO_X0$*E~?~N8@u!s`a_2&n~37?~4VCEv$TREh0xkd-5mA@5qIO z%SMTTCyPVGl3cj>od!tGYXs&26y##uqeUa|Nians{-F3s7pvB1P6>^2 zm=-HA8CDT;gHH00~++SAsjC4<0(BkXT;AFH~uDm?7@L1|7p z>u4(tGJF#z3lCcjnlUV|ZGPOnRu)PtiAEGuwbve)8}ujuFG&p35cCE^o?O_@enJk{ zUG@yrDEfJzIe_kDKWK5GOBhTa#6V`@4chC+-{%H0ZEtC65Vnk+kFcQM6~aqpPg4WG zu}Mzh3MO<#QvtV?`N${{g!5f(D{m8ouyPyyY>m8eRqN7c?xsCr0%GdaS^u z=iV6qgY?UDFXnAsJ?M7>H#9KlKRYs0@5Ss|*3O4GLlOB~yeAh8VT(zHZ4ZVfqSAJB aV(>2n9_4Z_e#G1W0000