From: Caisking <3449750381@qq.com> Date: Sat, 30 Mar 2024 07:19:32 +0000 (+0800) Subject: 更新所有训练列表词条 X-Git-Tag: release_V1.2.70_20241020_135402~1241^2~8 X-Git-Url: http://git.snicker.com.cn/Users/apple/Desktop/static/gitweb.css?a=commitdiff_plain;h=1bc84ee11e33bc4920539528c300e90bd6e52679;p=mirrors%2FFD230.git 更新所有训练列表词条 --- diff --git a/code/sdk/application/wearable/fd230app/CMakeLists.txt b/code/sdk/application/wearable/fd230app/CMakeLists.txt index 0eb2c53b4..1169f8662 100644 --- a/code/sdk/application/wearable/fd230app/CMakeLists.txt +++ b/code/sdk/application/wearable/fd230app/CMakeLists.txt @@ -513,6 +513,9 @@ set(SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/traing/training_list_more/src/TraingMoreView.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/traing/training_list_more/src/TraingMorePresenter.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/traing/training_list_more/src/TraingMoreAdapter.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/traing/training_list_more/src/TraingMoreItemView.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/traing/training_list_more/src/TraingMoreModel.cpp #saveele ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/saveele/src/SaveEleModel.cpp diff --git a/code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistPresenter.cpp b/code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistPresenter.cpp index e4f3f2796..1f2337b65 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistPresenter.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistPresenter.cpp @@ -9,6 +9,7 @@ #include "ability_manager.h" #include "securec.h" #include "config/include/ConfigModel.h" +#include "traing/include/TraingModel.h" namespace OHOS { ApplistPresenter::ApplistPresenter() diff --git a/code/sdk/application/wearable/fd230app/nativeui/language/Language_xml/input_list_en.txt b/code/sdk/application/wearable/fd230app/nativeui/language/Language_xml/input_list_en.txt index 6afdb601f..5f4175cf9 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/language/Language_xml/input_list_en.txt +++ b/code/sdk/application/wearable/fd230app/nativeui/language/Language_xml/input_list_en.txt @@ -174,3 +174,16 @@ STR_OTHER_MEDITATION,Meditation STR_OTHER_STILL,Still STR_OTHER_TILTING,Tilting STR_OTHER_WHEELCHAIR,Wheelchair +STR_EXERCISE_LIST,Exercise +STR_BALL_LIST,Ball +STR_WATER_LIST,Water +STR_DANCING_LIST,Dance +STR_EXTREME_LIST,Extreme +STR_ICE_LIST,Ice +STR_RECREATIONAL_LIST,Recreational +STR_OTHER_LIST,Other +STR_DANCING_TITLE,Dance Sport +STR_BALL_LIST_TITLE,Ball Sport +STR_OTHER_TITLE,Other Sport +STR_EXERCISE_TITLE,Exercise Sport +STR_TRAINING,Training \ No newline at end of file diff --git a/code/sdk/application/wearable/fd230app/nativeui/language/Language_xml/input_list_zh.txt b/code/sdk/application/wearable/fd230app/nativeui/language/Language_xml/input_list_zh.txt index d8e542222..16603729e 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/language/Language_xml/input_list_zh.txt +++ b/code/sdk/application/wearable/fd230app/nativeui/language/Language_xml/input_list_zh.txt @@ -173,4 +173,17 @@ STR_OTHER_INVEHICLE,在车里 STR_OTHER_MEDITATION,冥想 STR_OTHER_STILL,静止 STR_OTHER_TILTING,倾斜 -STR_OTHER_WHEELCHAIR,坐轮椅移动 \ No newline at end of file +STR_OTHER_WHEELCHAIR,坐轮椅移动 +STR_EXERCISE_LIST,健身类 +STR_BALL_LIST,球类 +STR_WATER_LIST,水上运动 +STR_DANCING_LIST,舞蹈类 +STR_EXTREME_LIST,极限运动 +STR_ICE_LIST,冰上运动 +STR_RECREATIONAL_LIST,休闲运动 +STR_OTHER_LIST,其他 +STR_DANCING_TITLE,舞蹈运动 +STR_BALL_LIST_TITLE,球类运动 +STR_OTHER_TITLE,其他运动 +STR_EXERCISE_TITLE,健身运动 +STR_TRAINING,训练 \ No newline at end of file diff --git a/code/sdk/application/wearable/fd230app/nativeui/language/Language_xml/language_en.xml b/code/sdk/application/wearable/fd230app/nativeui/language/Language_xml/language_en.xml index 8335b6820..84d8e0935 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/language/Language_xml/language_en.xml +++ b/code/sdk/application/wearable/fd230app/nativeui/language/Language_xml/language_en.xml @@ -175,4 +175,17 @@ + + + + + + + + + + + + + diff --git a/code/sdk/application/wearable/fd230app/nativeui/language/Language_xml/language_zh.xml b/code/sdk/application/wearable/fd230app/nativeui/language/Language_xml/language_zh.xml index b07ed1e7c..7604c2f49 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/language/Language_xml/language_zh.xml +++ b/code/sdk/application/wearable/fd230app/nativeui/language/Language_xml/language_zh.xml @@ -175,4 +175,17 @@ + + + + + + + + + + + + + diff --git a/code/sdk/application/wearable/fd230app/nativeui/language/font/en.lang b/code/sdk/application/wearable/fd230app/nativeui/language/font/en.lang index 37b2acd3b..a3ed1b8d6 100644 Binary files a/code/sdk/application/wearable/fd230app/nativeui/language/font/en.lang and b/code/sdk/application/wearable/fd230app/nativeui/language/font/en.lang differ diff --git a/code/sdk/application/wearable/fd230app/nativeui/language/font/ui_resource_string.h b/code/sdk/application/wearable/fd230app/nativeui/language/font/ui_resource_string.h index 8a10510c1..ba90556f0 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/language/font/ui_resource_string.h +++ b/code/sdk/application/wearable/fd230app/nativeui/language/font/ui_resource_string.h @@ -1,15 +1,15 @@ -/* -* Copyright (c) xxxxxxxx Technologies Co., Ltd. 2021-2021. All rights reserved. -* Description: language -* Author: Graphic develop team -* Create: 2021-07-06 -*/ - -#ifndef UI_RESOURCE_STRING_H -#define UI_RESOURCE_STRING_H -#include -namespace OHOS { -enum UIResourceTextId : uint16_t { +/* +* Copyright (c) xxxxxxxx Technologies Co., Ltd. 2021-2021. All rights reserved. +* Description: language +* Author: Graphic develop team +* Create: 2021-07-06 +*/ + +#ifndef UI_RESOURCE_STRING_H +#define UI_RESOURCE_STRING_H +#include +namespace OHOS { +enum UIResourceTextId : uint16_t { STR_EXERCISE_GENERAL = 0, STR_EXERCISE_FREETRAINING = 1, STR_EXERCISE_RESISTANCETRAINING = 2, @@ -185,10 +185,23 @@ enum UIResourceTextId : uint16_t { STR_OTHER_STILL = 172, STR_OTHER_TILTING = 173, STR_OTHER_WHEELCHAIR = 174, - STR_MAX_ID = 175, + STR_EXERCISE_LIST = 175, + STR_BALL_LIST = 176, + STR_WATER_LIST = 177, + STR_DANCING_LIST = 178, + STR_EXTREME_LIST = 179, + STR_ICE_LIST = 180, + STR_RECREATIONAL_LIST = 181, + STR_OTHER_LIST = 182, + STR_DANCING_TITLE = 183, + STR_BALL_LIST_TITLE = 184, + STR_OTHER_TITLE = 185, + STR_EXERCISE_TITLE = 186, + STR_TRAINING = 187, + STR_MAX_ID = 188, }; // UIResourceTextId - -enum FontLanguageId : uint8_t { + +enum FontLanguageId : uint8_t { LANGUAGE_ID_ZH, LANGUAGE_ID_EN, LANGUAGE_ID_MAX diff --git a/code/sdk/application/wearable/fd230app/nativeui/language/font/zh.lang b/code/sdk/application/wearable/fd230app/nativeui/language/font/zh.lang index fd08c5908..18730d308 100644 Binary files a/code/sdk/application/wearable/fd230app/nativeui/language/font/zh.lang and b/code/sdk/application/wearable/fd230app/nativeui/language/font/zh.lang differ diff --git a/code/sdk/application/wearable/fd230app/nativeui/main/include/dial/DialModelPower.h b/code/sdk/application/wearable/fd230app/nativeui/main/include/dial/DialModelPower.h index e1a9fd4f1..598edb345 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/main/include/dial/DialModelPower.h +++ b/code/sdk/application/wearable/fd230app/nativeui/main/include/dial/DialModelPower.h @@ -26,7 +26,7 @@ namespace OHOS void UpdatePower(); private: - uint8_t power_ = 0; + uint8_t power_ = 101; }; } #endif diff --git a/code/sdk/application/wearable/fd230app/nativeui/main/src/dial/DialModelPower.cpp b/code/sdk/application/wearable/fd230app/nativeui/main/src/dial/DialModelPower.cpp index 9f8adde63..c77f826c2 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/main/src/dial/DialModelPower.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/main/src/dial/DialModelPower.cpp @@ -1,3 +1,11 @@ +/*** + * @Author: Caisking 3449750381@qq.com + * @Date: 2024-02-21 10:06:53 + * @LastEditors: Caisking 3449750381@qq.com + * @LastEditTime: 2024-03-30 09:25:17 + * @FilePath: /sdk/application/wearable/fd230app/nativeui/main/src/dial/DialModelPower.cpp + * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE101 + */ /* * Copyright (c) CompanyNameMagicTag 2023. All rights reserved. * Description: DialModelPower @@ -21,7 +29,7 @@ namespace OHOS { (void)type; #if 1 - if (power_ == 0) + if (power_ == 101) { UpdatePower(); return true; 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 b9c7d60fc..c39389a68 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 @@ -1,23 +1,17 @@ -/*** - * @Author: Caisking 3449750381@qq.com - * @Date: 2024-03-22 14:43:06 - * @LastEditors: Caisking 3449750381@qq.com - * @LastEditTime: 2024-03-26 16:43:39 - * @FilePath: /sdk/application/wearable/fd230app/nativeui/traing/training_card/src/Training_CardPresenter.cpp - * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE - */ #include "traing/training_card/include/Training_CardPresenter.h" #include "traing/training_card/include/Training_CardView.h" #include "AppViewIDs.h" #include "components/ui_label_ext.h" -#include"language/font/ui_resource_string.h" +#include "language/font/ui_resource_string.h" #include "NativeAbility.h" #include "components/ui_label_ext.h" -#include"language/font/ui_resource_string.h" +#include "language/font/ui_resource_string.h" #include "UiConfig.h" #include "wearable_log.h" +#include "traing/include/TraingModel.h" + namespace OHOS { @@ -47,6 +41,9 @@ namespace OHOS { NativeAbility::GetInstance().ChangeSlice(VIEW_TRAININGMORE); } + // 标记进入界面是主界面 + // TraingModel::GetInstance()->SetInterface(VIEW_MAIN); + return true; } } // namespace OHOS \ No newline at end of file diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_aquatic/src/TraingAquaticPresenter.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_aquatic/src/TraingAquaticPresenter.cpp index c28beae13..6540e53b7 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_aquatic/src/TraingAquaticPresenter.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_aquatic/src/TraingAquaticPresenter.cpp @@ -1,4 +1,4 @@ -/*** +/*** * @Author: Caisking 3449750381@qq.com * @Date: 2024-03-26 09:46:17 * @LastEditors: Caisking 3449750381@qq.com @@ -111,6 +111,7 @@ namespace OHOS { UNUSED(event); TraingAquaticItemView *itemView = static_cast(&view); + // 传递训练项目 AppViewId viewId = itemView->GetTraingAquaticIndex(); UIResourceTextId sportid = itemView->GetTraingAquaticId(); TraingModel::GetInstance()->SetSportEvent(sportid); diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_aquatic/src/TraingAquaticView.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_aquatic/src/TraingAquaticView.cpp index 7bc72eb48..e0ee5827b 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_aquatic/src/TraingAquaticView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_aquatic/src/TraingAquaticView.cpp @@ -61,7 +61,7 @@ namespace OHOS /* -------------------------------------------------------------------------- */ // 初始化Lable - TraingModel::GetInstance()->InitLabel(title, 173, 52, 200, 60, "label1", "冰上运动", DEFAULT_VECTOR_FONT_FILENAME, 30); + TraingModel::GetInstance()->InitLabelExt(title, 155, 52, 200, 60, "label1", STR_WATER_LIST, DEFAULT_VECTOR_FONT_FILENAME, 30); scrollView->Add(title); // UIList 的适配器 p_TraingAquaticListAdapter = new TraingAquaticAdapter(); diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ball/src/TraingBallPresenter.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ball/src/TraingBallPresenter.cpp index 7a14f3ea7..89e5a6d42 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ball/src/TraingBallPresenter.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ball/src/TraingBallPresenter.cpp @@ -1,19 +1,4 @@ -/*** - * @Author: Caisking 3449750381@qq.com - * @Date: 2024-03-19 17:37:19 - * @LastEditors: Caisking 3449750381@qq.com - * @LastEditTime: 2024-03-26 19:51:06 - * @FilePath: /sdk/application/wearable/fd230app/nativeui/traing/training_list_ball/src/TraingBallPresenter.cpp - * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE - */ -/*** - * @Author: Caisking 3449750381@qq.com - * @Date: 2024-03-19 17:37:19 - * @LastEditors: Caisking 3449750381@qq.com - * @LastEditTime: 2024-03-26 14:23:32 - * @FilePath: /sdk/application/wearable/fd230app/nativeui/traing/src/TraingBallPresenter.cpp - * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE - */ + #include "AppViewIDs.h" #include "components/ui_label_ext.h" @@ -103,6 +88,7 @@ namespace OHOS { UNUSED(event); TraingBallItemView *itemView = static_cast(&view); + //传递训练项目 AppViewId viewId = itemView->GetTraingBallIndex(); UIResourceTextId sportid = itemView->GetTraingBallId(); TraingModel::GetInstance()->SetSportEvent(sportid); diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ball/src/TraingBallView.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ball/src/TraingBallView.cpp index b04aa10d1..46ebfbd94 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ball/src/TraingBallView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ball/src/TraingBallView.cpp @@ -61,7 +61,7 @@ namespace OHOS /* -------------------------------------------------------------------------- */ // 初始化Lable - TraingModel::GetInstance()->InitLabel(title, 173, 52, 200, 60, "label1", "球类运动", DEFAULT_VECTOR_FONT_FILENAME, 30); + TraingModel::GetInstance()->InitLabelExt(title, 155, 52, 200, 60, "label1", STR_BALL_LIST_TITLE, DEFAULT_VECTOR_FONT_FILENAME, 30); scrollView->Add(title); // UIList 的适配器 p_TraingBallListAdapter = new TraingBallAdapter(); diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_dance/src/TraingDancePresenter.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_dance/src/TraingDancePresenter.cpp index deda1774d..dd6fb77eb 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_dance/src/TraingDancePresenter.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_dance/src/TraingDancePresenter.cpp @@ -1,23 +1,8 @@ -/*** - * @Author: Caisking 3449750381@qq.com - * @Date: 2024-03-19 17:37:19 - * @LastEditors: Caisking 3449750381@qq.com - * @LastEditTime: 2024-03-26 19:51:06 - * @FilePath: /sdk/application/wearable/fd230app/nativeui/traing/training_list_dance/src/TraingDancePresenter.cpp - * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE - */ -/*** - * @Author: Caisking 3449750381@qq.com - * @Date: 2024-03-19 17:37:19 - * @LastEditors: Caisking 3449750381@qq.com - * @LastEditTime: 2024-03-26 14:23:32 - * @FilePath: /sdk/application/wearable/fd230app/nativeui/traing/src/TraingDancePresenter.cpp - * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE - */ + #include "AppViewIDs.h" #include "components/ui_label_ext.h" -#include"language/font/ui_resource_string.h" +#include "language/font/ui_resource_string.h" #include "NativeAbility.h" #include @@ -26,7 +11,7 @@ #include "traing/training_list_dance/include/TraingDanceItemView.h" #include "traing/training_list_dance/include/TraingDancePresenter.h" #include "traing/training_list_dance/include/TraingDanceView.h" -// #include "TraingDanceView.h" +#include "traing/include/TraingModel.h" namespace OHOS { @@ -101,8 +86,11 @@ namespace OHOS bool TraingDancePresenter::OnClick(UIView &view, const ClickEvent &event) { UNUSED(event); + // 传递训练项目 TraingDanceItemView *itemView = static_cast(&view); AppViewId viewId = itemView->GetTraingDanceIndex(); + UIResourceTextId sportid = itemView->GetTraingDanceId(); + TraingModel::GetInstance()->SetSportEvent(sportid); WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "ApplistPresenter::OnClick viewid = %d\n", viewId); if (viewId < VIEW_MAX_INTER_APP) { diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_dance/src/TraingDanceView.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_dance/src/TraingDanceView.cpp index 1acc2b95f..15a7b198d 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_dance/src/TraingDanceView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_dance/src/TraingDanceView.cpp @@ -61,7 +61,7 @@ namespace OHOS /* -------------------------------------------------------------------------- */ // 初始化Lable - TraingModel::GetInstance()->InitLabel(title, 173, 52, 200, 60, "label1", "舞蹈运动", DEFAULT_VECTOR_FONT_FILENAME, 30); + TraingModel::GetInstance()->InitLabelExt(title, 155, 52, 200, 60, "label1",STR_DANCING_TITLE, DEFAULT_VECTOR_FONT_FILENAME, 30); scrollView->Add(title); // UIList 的适配器 p_TraingDanceListAdapter = new TraingDanceAdapter(); diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_fitness/src/TraingFitnessView.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_fitness/src/TraingFitnessView.cpp index 87a363984..5fce63ae1 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_fitness/src/TraingFitnessView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_fitness/src/TraingFitnessView.cpp @@ -59,7 +59,7 @@ namespace OHOS /* -------------------------------------------------------------------------- */ // 初始化Lable - TraingModel::GetInstance()->InitLabel(title, 173, 52, 200, 60, "label1", "健身运动", DEFAULT_VECTOR_FONT_FILENAME, 30); + TraingModel::GetInstance()->InitLabelExt(title, 155, 52, 200, 60, "label1", STR_EXERCISE_TITLE, DEFAULT_VECTOR_FONT_FILENAME, 30); scrollView->Add(title); // UIList 的适配器 p_TraingFitnessListAdapter = new TraingFitnessAdapter(); diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ice/include/TraingFitnessItemView.h b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ice/include/TraingFitnessItemView.h deleted file mode 100644 index 535de0632..000000000 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ice/include/TraingFitnessItemView.h +++ /dev/null @@ -1,37 +0,0 @@ - - -#ifndef TraingFitness_ITEM_VIEW_H -#define TraingFitness_ITEM_VIEW_H - -#include "components/ui_label.h" -#include "components/ui_label_ext.h" -#include "language/font/ui_resource_string.h" -#include "components/ui_view_group.h" -#include "components/ui_checkbox.h" -#include "components/ui_image_view.h" -#include "traing/training_list_fitness/include/TraingFitnessAdapter.h" -#include "components/ui_label_button.h" -#include "AppViewIDs.h" -#include "ohos_types.h" - -namespace OHOS -{ - class TraingFitnessItemView : public UIViewGroup - { - public: - explicit TraingFitnessItemView(); - virtual ~TraingFitnessItemView(); - virtual void SetItemInfo(const TraingFitnessItem itemInfo); - virtual void SetUpChild(); - AppViewId GetTraingFitnessIndex(); - UIResourceTextId GetTraingFitnessId(); - private: - TraingFitnessItemView(const TraingFitnessItemView &); - UIImageView sbackground; // 背景 - UIImageView sicon; // 箭头 - UILabelExt sLabel; // 标签 - TraingFitnessItem sItemInfo = {VIEW_INVALID, STR_EXERCISE_GENERAL}; - }; - -} -#endif \ No newline at end of file diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ice/include/TraingIceAdapter.h b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ice/include/TraingIceAdapter.h index f706e6d9b..6f38618c8 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ice/include/TraingIceAdapter.h +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ice/include/TraingIceAdapter.h @@ -1,3 +1,11 @@ +/*** + * @Author: Caisking 3449750381@qq.com + * @Date: 2024-03-27 11:09:52 + * @LastEditors: Caisking 3449750381@qq.com + * @LastEditTime: 2024-03-30 11:26:25 + * @FilePath: /sdk/application/wearable/fd230app/nativeui/traing/training_list_ice/include/TraingIceAdapter.h + * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE + */ /*** * @Author: Caisking 3449750381@qq.com * @Date: 2024-03-27 11:09:52 diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ice/include/TraingIceItemView.h b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ice/include/TraingIceItemView.h index 5966800d3..8944ece0e 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ice/include/TraingIceItemView.h +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ice/include/TraingIceItemView.h @@ -12,7 +12,7 @@ #include "components/ui_label_button.h" #include "AppViewIDs.h" #include "components/ui_label_ext.h" -#include"language/font/ui_resource_string.h" +#include "language/font/ui_resource_string.h" #include "ohos_types.h" namespace OHOS @@ -30,8 +30,8 @@ namespace OHOS private: TraingIceItemView(const TraingIceItemView &); UIImageView sbackground; // 背景 - UIImageView sicon; // 箭头 - UILabelExt sLabel; // 标签 + UIImageView sicon; // 箭头 + UILabelExt sLabel; // 标签 TraingIceItem sItemInfo = {VIEW_INVALID, STR_ICE_SPORTS}; }; diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ice/src/TraingIcePresenter.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ice/src/TraingIcePresenter.cpp index 434daeced..ef73cf0aa 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ice/src/TraingIcePresenter.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ice/src/TraingIcePresenter.cpp @@ -1,23 +1,8 @@ -/*** - * @Author: Caisking 3449750381@qq.com - * @Date: 2024-03-19 17:37:19 - * @LastEditors: Caisking 3449750381@qq.com - * @LastEditTime: 2024-03-26 19:51:06 - * @FilePath: /sdk/application/wearable/fd230app/nativeui/traing/training_list_ice/src/TraingIcePresenter.cpp - * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE - */ -/*** - * @Author: Caisking 3449750381@qq.com - * @Date: 2024-03-19 17:37:19 - * @LastEditors: Caisking 3449750381@qq.com - * @LastEditTime: 2024-03-26 14:23:32 - * @FilePath: /sdk/application/wearable/fd230app/nativeui/traing/src/TraingIcePresenter.cpp - * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE - */ + #include "AppViewIDs.h" #include "components/ui_label_ext.h" -#include"language/font/ui_resource_string.h" +#include "language/font/ui_resource_string.h" #include "NativeAbility.h" #include @@ -26,7 +11,7 @@ #include "traing/training_list_ice/include/TraingIceItemView.h" #include "traing/training_list_ice/include/TraingIcePresenter.h" #include "traing/training_list_ice/include/TraingIceView.h" -// #include "TraingIceView.h" +#include "traing/include/TraingModel.h" namespace OHOS { @@ -93,7 +78,6 @@ namespace OHOS if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT) { NativeAbility::GetInstance().ChangeSlice(VIEW_TRAININGMORE); - } UNUSED(view); return true; @@ -104,6 +88,8 @@ namespace OHOS UNUSED(event); TraingIceItemView *itemView = static_cast(&view); AppViewId viewId = itemView->GetTraingIceIndex(); + UIResourceTextId sportid = itemView->GetTraingIceId(); + TraingModel::GetInstance()->SetSportEvent(sportid); WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "ApplistPresenter::OnClick viewid = %d\n", viewId); if (viewId < VIEW_MAX_INTER_APP) { diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ice/src/TraingIceView.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ice/src/TraingIceView.cpp index 53a815a0d..b689951c9 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ice/src/TraingIceView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_ice/src/TraingIceView.cpp @@ -69,7 +69,7 @@ namespace OHOS /* -------------------------------------------------------------------------- */ // 初始化Lable - TraingModel::GetInstance()->InitLabel(title, 173, 52, 200, 60, "label1", "冰上运动", DEFAULT_VECTOR_FONT_FILENAME, 30); + TraingModel::GetInstance()->InitLabelExt(title, 155, 52, 200, 60, "label1", STR_ICE_LIST, DEFAULT_VECTOR_FONT_FILENAME, 30); scrollView->Add(title); // UIList 的适配器 p_TraingIceListAdapter = new TraingIceAdapter(); diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_limit/src/TraingLimitPresenter.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_limit/src/TraingLimitPresenter.cpp index 27b47aa50..e67e22e6f 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_limit/src/TraingLimitPresenter.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_limit/src/TraingLimitPresenter.cpp @@ -1,19 +1,3 @@ -/*** - * @Author: Caisking 3449750381@qq.com - * @Date: 2024-03-19 17:37:19 - * @LastEditors: Caisking 3449750381@qq.com - * @LastEditTime: 2024-03-26 19:51:06 - * @FilePath: /sdk/application/wearable/fd230app/nativeui/traing/training_list_limit/src/TraingLimitPresenter.cpp - * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE - */ -/*** - * @Author: Caisking 3449750381@qq.com - * @Date: 2024-03-19 17:37:19 - * @LastEditors: Caisking 3449750381@qq.com - * @LastEditTime: 2024-03-26 14:23:32 - * @FilePath: /sdk/application/wearable/fd230app/nativeui/traing/src/TraingLimitPresenter.cpp - * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE - */ #include "AppViewIDs.h" #include "components/ui_label_ext.h" diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_limit/src/TraingLimitView.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_limit/src/TraingLimitView.cpp index e76e13f85..c7f6f2cdb 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_limit/src/TraingLimitView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_limit/src/TraingLimitView.cpp @@ -51,7 +51,7 @@ namespace OHOS } scrollView->SetPosition(0, 0, HORIZONTAL_RESOLUTION, VERTICAL_RESOLUTION); // scrollView->SetStyle(STYLE_BACKGROUND_OPA, 0xff); - scrollView->SetScrollBlankSize(52); + scrollView->SetScrollBlankSize(52); // scrollView->SetReboundSize(100); scrollView->SetTouchable(true); scrollView->SetDraggable(true); @@ -61,7 +61,7 @@ namespace OHOS /* -------------------------------------------------------------------------- */ // 初始化Lable - TraingModel::GetInstance()->InitLabel(title, 173, 52, 200, 60, "label1", "极限运动", DEFAULT_VECTOR_FONT_FILENAME, 30); + TraingModel::GetInstance()->InitLabelExt(title, 155, 52, 200, 60, "label1", STR_EXTREME_LIST, DEFAULT_VECTOR_FONT_FILENAME, 30); scrollView->Add(title); // UIList 的适配器 p_TraingLimitListAdapter = new TraingLimitAdapter(); diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/include/TraingMoreAdapter.h b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/include/TraingMoreAdapter.h new file mode 100644 index 000000000..e2e969750 --- /dev/null +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/include/TraingMoreAdapter.h @@ -0,0 +1,51 @@ + +#ifndef TraingMore_ADAPTER_H +#define TraingMore_ADAPTER_H +#include +#include +#include "components/ui_list.h" +#include "components/abstract_adapter.h" +#include "components/ui_label.h" +#include "components/ui_label_ext.h" +#include "components/ui_checkbox.h" +#include "AppViewIDs.h" +#include "components/ui_label_ext.h" +#include "language/font/ui_resource_string.h" + +// 列表的适配器 +namespace OHOS +{ + + typedef struct + { + AppViewId id; + UIResourceTextId labelid; // 标签 + const char *logo; + } TraingMoreItem; + + class TraingMoreAdapter : public AbstractAdapter + { + public: + explicit TraingMoreAdapter(); + virtual ~TraingMoreAdapter(); + + void SetData(std::list &data); + + virtual uint16_t GetCount(void) override; + + virtual UIView *GetView(UIView *inView, int16_t index) override; + + virtual void AddItem(const TraingMoreItem &item); + + void SetItemClickListener(UIView::OnClickListener *itemclicklistener) + { + itemClickListener = itemclicklistener; + } + + private: + std::list listData; + UIView::OnClickListener *itemClickListener{nullptr}; + }; +} + +#endif \ No newline at end of file diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/include/TraingMoreItemView.h b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/include/TraingMoreItemView.h new file mode 100644 index 000000000..8b5c9e3dd --- /dev/null +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/include/TraingMoreItemView.h @@ -0,0 +1,47 @@ +/*** + * @Author: Caisking 3449750381@qq.com + * @Date: 2024-03-27 11:12:32 + * @LastEditors: Caisking 3449750381@qq.com + * @LastEditTime: 2024-03-30 11:05:58 + * @FilePath: /sdk/application/wearable/fd230app/nativeui/traing/training_list_more/include/TraingMoreItemView.h + * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE + */ + +#ifndef TraingMore_ITEM_VIEW_H +#define TraingMore_ITEM_VIEW_H + +#include "components/ui_label.h" +#include "components/ui_label_ext.h" +#include "components/ui_view_group.h" +#include "components/ui_checkbox.h" +#include "components/ui_image_view.h" +#include "traing/training_list_more/include/TraingMoreAdapter.h" +#include "components/ui_label_button.h" +#include "AppViewIDs.h" +#include "components/ui_label_ext.h" +#include "language/font/ui_resource_string.h" +#include "ohos_types.h" + +namespace OHOS +{ + class TraingMoreItemView : public UIViewGroup + { + public: + explicit TraingMoreItemView(); + virtual ~TraingMoreItemView(); + virtual void SetItemInfo(const TraingMoreItem itemInfo); + virtual void SetUpChild(); + AppViewId GetTraingMoreIndex(); + UIResourceTextId GetTraingMoreId(); + + private: + TraingMoreItemView(const TraingMoreItemView &); + UIImageView sbackground; // 背景 + UIImageView sicon; // 箭头 + UILabelExt sLabel; // 标签 + UIImageView slogo; // 图标 + TraingMoreItem sItemInfo = {VIEW_INVALID, STR_ICE_SPORTS,nullptr}; + }; + +} +#endif \ No newline at end of file diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/include/TraingMoreModel.h b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/include/TraingMoreModel.h new file mode 100644 index 000000000..7fff325df --- /dev/null +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/include/TraingMoreModel.h @@ -0,0 +1,39 @@ + +#ifndef TraingMore_MODEL_H +#define TraingMore_MODEL_H + +#include +#include +#include "AppViewIDs.h" +#include "components/ui_label_ext.h" +#include "language/font/ui_resource_string.h" +#include "components/ui_label_ext.h" +#include "language/font/ui_resource_string.h" +#include "UiConfig.h" +#include "TraingMorePresenter.h" +#include "traing/training_list_more/include/TraingMoreAdapter.h" + +namespace OHOS +{ + class TraingMoreModel + { + public: + static TraingMoreModel &GetInstance(void); + void InitTraingMoreListItem(); + const TraingMoreItem *GetTraingMorelistItems() const; + uint8_t GetTraingMoreListNum() const; + // const std::map &GetTraingMoreIdToViewId() const; + + private: + TraingMoreModel(); + TraingMoreModel(const TraingMoreModel &); + TraingMoreModel &operator=(const TraingMoreModel &); + virtual ~TraingMoreModel(); + static const uint16_t TraingMoreListMaxNum = 8; + TraingMoreItem TraingMores[TraingMoreListMaxNum] = {VIEW_INVALID, STR_ICE_SPORTS, nullptr}; + // std::map TraingMoreIdToViewId; + bool btConnectStatus{false}; + }; +} + +#endif \ No newline at end of file diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/include/TraingMorePresenter.h b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/include/TraingMorePresenter.h index 5f81c34a5..161b92238 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/include/TraingMorePresenter.h +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/include/TraingMorePresenter.h @@ -1,11 +1,13 @@ /*** * @Author: Caisking 3449750381@qq.com - * @Date: 2024-03-19 17:37:18 + * @Date: 2024-03-26 09:44:11 * @LastEditors: Caisking 3449750381@qq.com - * @LastEditTime: 2024-03-26 18:26:47 + * @LastEditTime: 2024-03-27 14:22:01 * @FilePath: /sdk/application/wearable/fd230app/nativeui/traing/training_list_more/include/TraingMorePresenter.h * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE */ + + #ifndef _TraingMore_PRESENTER_H #define _TraingMore_PRESENTER_H @@ -15,7 +17,7 @@ namespace OHOS { class TraingMoreView; - + class TraingMoreModel; class TraingMorePresenter : public Presenter, public UIView::OnClickListener, public UIView::OnDragListener @@ -32,10 +34,12 @@ namespace OHOS static TraingMorePresenter *GetInstance(); private: - // 因为继承了OnClickListener,所以有OnClick属性,至于参数,原函数也这样直接继承; + // 因为继承了OnClickener,所以有OnClick属性,至于参数,原函数也这样直接继承; bool OnClick(UIView &view, const ClickEvent &event) override; bool OnDrag(UIView &view, const DragEvent &event) override; - bool OnDragEnd(UIView& view, const DragEvent& event) override; + bool OnDragEnd(UIView &view, const DragEvent &event) override; + + TraingMoreModel *p_TraingMoreModel{nullptr}; }; } // namespace OHOS diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/include/TraingMoreView.h b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/include/TraingMoreView.h index 2b9253d65..06904475e 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/include/TraingMoreView.h +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/include/TraingMoreView.h @@ -1,39 +1,23 @@ -#ifndef _TraingMore_VIEW_H -#define _TraingMore_VIEW_H + +#ifndef TraingMore_VIEW_H +#define TraingMore_VIEW_H #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_image_animator.h" -#include "components/ui_label_button_ext.h" -#include "components/ui_chart.h" +#include "components/ui_scroll_view.h" #include "components/ui_list.h" -#include "components/icon_adapter.h" -#include "wearable_log.h" -#include "ohos_types.h" -#include "components/ui_card_page.h" -#include "traing/include/TraingModel.h" -#include "traing/Training_UiConfig.h" +#include "traing/training_list_more/include/TraingMoreAdapter.h" +#include "traing/training_list_more/include/TraingMoreModel.h" +#include "components/ui_label_button_ext.h" +#include "components/ui_label_ext.h" +#include"language/font/ui_resource_string.h" -#include "TraingMorePresenter.h" namespace OHOS { -#define BUTTON_FITNESS "button1" // 健身 -#define BUTTON_DANCE "button2" // 舞蹈 -#define BUTTON_REST "button3" // 休闲运动 -#define BUTTON_BALL "button4" // 球类 -#define BUTTON_SWIMMING "button5" // 水上运动 -#define BUTTON_ICE "button6" // 冰上运动 -#define BUTTON_LIMIT "button7" // 极限运动 -#define BUTTON_OTHER "button8" // 其他 - class TraingMorePresenter; - class TraingMoreView : public View + class TraingMoreModel; + class TraingMoreView : public View, public UIViewGroup { public: @@ -45,40 +29,25 @@ namespace OHOS void OnSetUpView() override; void OnTearDownView() override; void OnStop() override; - void InitView(); - void DeInit(); - - void InitList(); + + UIList *GetList(); + void AddToTraingMoreList(const TraingMoreItem &item); + + private: + void InitView(void); + void DeInitView(void); void PreLoad(void); private: + UIScrollView *scrollView = nullptr; + UILabelExt *title{nullptr}; + TraingMoreAdapter *p_TraingMoreListAdapter{nullptr}; + UIList *TraingMoreList = nullptr; UIView::OnDragListener *draglistener{nullptr}; - TraingMoreView(TraingMoreView &&) = delete; - TraingMoreView &operator=(TraingMoreView &&) = delete; - UIViewGroup *container_ = nullptr; - UIScrollView *scrollView1_ = nullptr; - UILabelExt *label1_ = nullptr; - UIImageView *image1_ = nullptr; - UIImageView *image2_ = nullptr; - UIImageView *image3_ = nullptr; - UIImageView *image4_ = nullptr; - UIImageView *image5_ = nullptr; - UIImageView *image6_ = nullptr; - UIImageView *image7_ = nullptr; - UIImageView *image8_ = nullptr; - UIButton *button1_ = nullptr; - UIButton *button2_ = nullptr; - UIButton *button3_ = nullptr; - UIButton *button4_ = nullptr; - UIButton *button5_ = nullptr; - UIButton *button6_ = nullptr; - UIButton *button7_ = nullptr; - UIButton *button8_ = nullptr; - UIList *list1_ = nullptr; - IconAdapter *list1adapter_ = nullptr; - List *list1data_ = nullptr; - bool viewiInitStatus{false}; + TraingMorePresenter *g_TraingMorePresenter{nullptr}; + TraingMoreModel *g_TraingMoreModel{nullptr}; + bool viewInitStatus{false}; }; } // namespace OHOS -#endif // TraingMore_PRESENTER_H +#endif \ No newline at end of file diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/src/TraingMoreAdapter.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/src/TraingMoreAdapter.cpp new file mode 100644 index 000000000..956366bbb --- /dev/null +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/src/TraingMoreAdapter.cpp @@ -0,0 +1,95 @@ +/*** + * @Author: Caisking 3449750381@qq.com + * @Date: 2024-03-27 11:12:53 + * @LastEditors: Caisking 3449750381@qq.com + * @LastEditTime: 2024-03-27 15:27:45 + * @FilePath: /sdk/application/wearable/fd230app/nativeui/traing/training_list_more/src/TraingMoreAdapter.cpp + * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE + */ +#include "traing/training_list_more/include/TraingMoreAdapter.h" +#include "traing/training_list_more/include/TraingMoreModel.h" +#include "traing/training_list_more/include/TraingMoreItemView.h" + +#include "wearable_log.h" + +namespace OHOS +{ + TraingMoreAdapter::TraingMoreAdapter() {} + + TraingMoreAdapter::~TraingMoreAdapter() + { + listData.clear(); + } + + uint16_t TraingMoreAdapter::GetCount(void) + { + return listData.size(); + } + + void TraingMoreAdapter::SetData(std::list &data) + { + if (!listData.empty()) + { + listData.clear(); + } + std::list::iterator it; + for (it = data.begin(); it != data.end(); it++) + { + listData.push_back(*it); + } + } + + /// @brief 为列表的每一项创建一个视图 + /// @param inView 一个指向已存在的视图对象的指 + /// @param index 要创建的视图在列表中的索引l。 + /// @return 返回该视图对象 + UIView *TraingMoreAdapter::GetView(UIView *inView, int16_t index) + { + + // 1.先检查列表数据是否为空,若为空则返回空指针 + if (listData.empty()) + { + return nullptr; + } + // 2.接着检查索引是否小于0,若小于0则返回空指针 + if (index < 0) + { + return nullptr; + } + // 3.检查是否超出列表数据大小,若超出则返回空指针 + size_t uindex = index; + if (uindex >= listData.size()) + { + return nullptr; + } + // 4.通过迭代器访问列表中指定索引位置的元素,将其赋值给itemData变量 + std::list::iterator it = listData.begin(); + for (int i = 0; i < index; i++) + { + it++; + } + TraingMoreItem itemData = *it; + TraingMoreItemView *item = nullptr; + /* + 5.根据传入的inView参数是否已经存在一个视图对象, + 若为空则创建一个新的MessageItemView对象, + 否则将inView转换成MessageItemView类型的指针 + */ + if (inView == nullptr) + { + item = new TraingMoreItemView(); + } + else + { + item = static_cast(inView); + } + item->SetItemInfo(itemData); + item->SetOnClickListener(itemClickListener); + return item; + } + + void TraingMoreAdapter::AddItem(const TraingMoreItem &item) + { + listData.push_back(item); + } +} // namespace OHOS diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/src/TraingMoreItemView.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/src/TraingMoreItemView.cpp new file mode 100644 index 000000000..38270f2e8 --- /dev/null +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/src/TraingMoreItemView.cpp @@ -0,0 +1,79 @@ +/*** + * @Author: Caisking 3449750381@qq.com + * @Date: 2024-03-27 11:13:16 + * @LastEditors: Caisking 3449750381@qq.com + * @LastEditTime: 2024-03-29 11:47:02 + * @FilePath: /sdk/application/wearable/fd230app/nativeui/traing/training_list_more/src/TraingMoreItemView.cpp + * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE + */ + +#include "traing/training_list_more/include/TraingMoreItemView.h" +#include "traing/include/TraingModel.h" +#include "traing/Training_UiConfig.h" +#include "components/ui_label_ext.h" +#include "language/font/ui_resource_string.h" +#include "UiConfig.h" +namespace OHOS +{ + + TraingMoreItemView::TraingMoreItemView() + { + SetPosition(0, 0, 380, 120); // 每一个itemview宽高要配置好,因为加到list都是以这个视图为基准 + SetStyle(STYLE_BACKGROUND_COLOR, Color::Black().full); + SetStyle(STYLE_BACKGROUND_OPA, 255); + SetTouchable(true); + SetUpChild(); + Add(&sbackground); + Add(&sicon); + Add(&sLabel); + Add(&slogo); + } + + TraingMoreItemView::~TraingMoreItemView() + { + Remove(&sbackground); + Remove(&sicon); + Remove(&sLabel); + Remove(&slogo); + } + + /// @brief 设置item的信息 + /// @param itemInfo + void TraingMoreItemView::SetItemInfo(const TraingMoreItem itemInfo) + { + sItemInfo = itemInfo; + sLabel.SetTextId(itemInfo.labelid); + slogo.SetSrc(itemInfo.logo); + } + + /// @brief 设置每一个itemview上的组件 + void TraingMoreItemView::SetUpChild() + { + sbackground.SetSrc(PNG_SETTING_BACKGROUND_IMAGE); + + slogo.SetPosition(60, 35); + slogo.SetStyle(STYLE_IMAGE_OPA, OPA_OPAQUE); + + sicon.SetPosition(330, 40); + sicon.SetSrc(ICON_IMAGE); + sicon.SetStyle(STYLE_IMAGE_OPA, OPA_OPAQUE); + + sLabel.SetPosition(50, 10, 300, 80); + sLabel.SetLineBreakMode(UILabel::LINE_BREAK_ELLIPSIS); + sLabel.SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER); + sLabel.SetRollSpeed(0); + sLabel.SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30); + } + + /// @brief 获取list的中每个组件的在list的下标 + /// @return 返回下标 + AppViewId TraingMoreItemView::GetTraingMoreIndex() + { + return sItemInfo.id; + } + + UIResourceTextId TraingMoreItemView::GetTraingMoreId() + { + return sItemInfo.labelid; + } +} \ No newline at end of file diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/src/TraingMoreModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/src/TraingMoreModel.cpp new file mode 100644 index 000000000..23bce5d7e --- /dev/null +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/src/TraingMoreModel.cpp @@ -0,0 +1,54 @@ +/*** + * @Author: Caisking 3449750381@qq.com + * @Date: 2024-03-26 18:34:15 + * @LastEditors: Caisking 3449750381@qq.com + * @LastEditTime: 2024-03-26 18:36:25 + * @FilePath: /sdk/application/wearable/fd230app/nativeui/traing/training_list_more/src/TraingMoreModel.cpp + * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE + */ + +#include "traing/training_list_more/include/TraingMoreModel.h" +#include "traing/Training_UiConfig.h" +#include "common/image_cache_manager.h" +#include "components/ui_label_ext.h" +#include "language/font/ui_resource_string.h" +#include "UiConfig.h" +#include "ui_resource_image.h" +#include "AppViewIDs.h" +#include "components/ui_label_ext.h" +#include "language/font/ui_resource_string.h" +namespace OHOS +{ + + TraingMoreModel::TraingMoreModel() {} + + TraingMoreModel::~TraingMoreModel() {} + + TraingMoreModel &TraingMoreModel::GetInstance() + { + static TraingMoreModel instance; + return instance; + } + + void TraingMoreModel::InitTraingMoreListItem() + { + TraingMores[0] = {VIEW_TRAININGFITNESS, STR_EXERCISE_LIST, FITNESS_IMAGE}; + TraingMores[1] = {VIEW_TRAININGDANCE, STR_DANCING_LIST, DANCE_IMAGE}; + TraingMores[2] = {VIEW_TRAININGREST, STR_RECREATIONAL_LIST, REST_IMAGE}; + TraingMores[3] = {VIEW_TRAININGBALL, STR_BALL_LIST, BALL_IMAGE}; + TraingMores[4] = {VIEW_TRAININGAQUATIC, STR_WATER_LIST, SWIMMING_IMAGE}; + TraingMores[5] = {VIEW_TRAININGICE, STR_ICE_LIST, ICE_IMAGE}; + TraingMores[6] = {VIEW_TRAININGLIMIT, STR_EXTREME_LIST, LIMIT_IMAGE}; + TraingMores[7] = {VIEW_TRAININGOTHER, STR_OTHER_LIST, OTHER_IMAGE}; + } + + const TraingMoreItem *TraingMoreModel::GetTraingMorelistItems() const + { + return TraingMores; + } + uint8_t TraingMoreModel::GetTraingMoreListNum() const + { + return TraingMoreListMaxNum; + } + +} \ No newline at end of file diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/src/TraingMorePresenter.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/src/TraingMorePresenter.cpp index 597b51c3c..8c66c1187 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/src/TraingMorePresenter.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/src/TraingMorePresenter.cpp @@ -1,3 +1,5 @@ + + #include "AppViewIDs.h" #include "components/ui_label_ext.h" #include "language/font/ui_resource_string.h" @@ -6,20 +8,22 @@ #include #include #include +#include "traing/training_list_more/include/TraingMoreItemView.h" #include "traing/training_list_more/include/TraingMorePresenter.h" -#include "MainViewSample.h" -#include "ScreenModels.h" +#include "traing/training_list_more/include/TraingMoreView.h" // #include "TraingMoreView.h" namespace OHOS { + extern const char *More_buttons[]; + extern char *More_text[]; // 当前Presenter属性实例化的内存指针 static TraingMorePresenter *g_pTraingMorePresenter = nullptr; TraingMorePresenter::TraingMorePresenter() { - + p_TraingMoreModel = &TraingMoreModel::GetInstance(); g_pTraingMorePresenter = this; } @@ -37,19 +41,26 @@ namespace OHOS void TraingMorePresenter::OnStart() { - + p_TraingMoreModel->InitTraingMoreListItem(); Presenter::OnStart(); } void TraingMorePresenter::OnPause(void) { - Presenter::OnPause(); } void TraingMorePresenter::OnResume(void) { - + if (view_ == nullptr) + { + return; + } + const TraingMoreItem *itemInfo = p_TraingMoreModel->GetTraingMorelistItems(); + for (int i = 0; i < p_TraingMoreModel->GetTraingMoreListNum(); i++) + { + view_->AddToTraingMoreList(itemInfo[i]); + } Presenter::OnResume(); } @@ -64,21 +75,9 @@ namespace OHOS } bool TraingMorePresenter::OnDragEnd(UIView &view, const DragEvent &event) { - if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT) { - uint16_t preSlice = NativeAbility::GetInstance().GetPreSliceId(); - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Id:[%d]", preSlice); - if (preSlice == VIEW_MAIN) - { - NativeAbility::GetInstance().ChangeSlice(VIEW_MAIN); - // MainViewSample::GetInstance()->SetPage(CardId::TRAINING); - return true; - } - else - { - NativeAbility::GetInstance().ChangeSlice(VIEW_TRAINING); - } + NativeAbility::GetInstance().ChangeSlice(VIEW_TRAINING); } UNUSED(view); return true; @@ -86,39 +85,16 @@ namespace OHOS bool TraingMorePresenter::OnClick(UIView &view, const ClickEvent &event) { - // 根据控件id查找是哪个控件触发了点击回调 - if (strcmp(view.GetViewId(), BUTTON_BALL) == 0) + UNUSED(event); + TraingMoreItemView *itemView = static_cast(&view); + AppViewId viewId = itemView->GetTraingMoreIndex(); + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "ApplistPresenter::OnClick viewid = %d\n", viewId); + if (viewId < VIEW_MAX_INTER_APP) { - NativeAbility::GetInstance().ChangeSlice(VIEW_TRAININGBALL); + NativeAbility::GetInstance().ChangeSlice(viewId); + return true; } - if (strcmp(view.GetViewId(), BUTTON_DANCE) == 0) - { - NativeAbility::GetInstance().ChangeSlice(VIEW_TRAININGDANCE); - } - if (strcmp(view.GetViewId(), BUTTON_FITNESS) == 0) - { - NativeAbility::GetInstance().ChangeSlice(VIEW_TRAININGFITNESS); - } - if (strcmp(view.GetViewId(), BUTTON_ICE) == 0) - { - NativeAbility::GetInstance().ChangeSlice(VIEW_TRAININGICE); - } - if (strcmp(view.GetViewId(), BUTTON_LIMIT) == 0) - { - NativeAbility::GetInstance().ChangeSlice(VIEW_TRAININGLIMIT); - } - if (strcmp(view.GetViewId(), BUTTON_OTHER) == 0) - { - NativeAbility::GetInstance().ChangeSlice(VIEW_TRAININGOTHER); - } - if (strcmp(view.GetViewId(), BUTTON_REST) == 0) - { - NativeAbility::GetInstance().ChangeSlice(VIEW_TRAININGREST); - } - if (strcmp(view.GetViewId(), BUTTON_SWIMMING) == 0) - { - NativeAbility::GetInstance().ChangeSlice(VIEW_TRAININGAQUATIC); - } - return true; + return false; } + } diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/src/TraingMoreView.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/src/TraingMoreView.cpp index de837fa7a..de5a8df4b 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/src/TraingMoreView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_more/src/TraingMoreView.cpp @@ -1,23 +1,32 @@ - +/*** + * @Author: Caisking 3449750381@qq.com + * @Date: 2024-03-26 09:46:17 + * @LastEditors: Caisking 3449750381@qq.com + * @LastEditTime: 2024-03-29 12:06:57 + * @FilePath: /sdk/application/wearable/fd230app/nativeui/traing/training_list_more/src/TraingMoreView.cpp + * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE + */ #include "traing/training_list_more/include/TraingMoreView.h" +#include "traing/training_list_more/include/TraingMorePresenter.h" #include "traing/include/TraingModel.h" #include "traing/Training_UiConfig.h" -#include "common/image_cache_manager.h" #include "components/ui_label_ext.h" -#include"language/font/ui_resource_string.h" +#include "language/font/ui_resource_string.h" #include "UiConfig.h" -#include "ui_resource_image.h" -#include -#include "components/ui_button.h" +#include "wearable_log.h" + namespace OHOS { - // 定义全局变量 - static const char *imagePaths[] = {FITNESS_IMAGE, DANCE_IMAGE, REST_IMAGE, BALL_IMAGE, SWIMMING_IMAGE, ICE_IMAGE, LIMIT_IMAGE, OTHER_IMAGE}; - - static char *text[] = {"健身类", "舞蹈类", "休闲运动", "球类", "水上运动", "冰上运动", "极限运动", "其他"}; - + static constexpr uint8_t NUM_2 = 2; static TraingMoreView *g_pTraingMoreView{nullptr}; + /* --------------------------------- List --------------------------------- */ + static constexpr int16_t More_LIST_POSITION_X = 43; + static constexpr int16_t More_LIST_POSITION_Y = 120; + static constexpr int16_t More_SCROLLBLANKSIZE = 35; // 设置此滚动视图的空白大小。 + static constexpr int16 MAX_SCR_DIS = 1000; + static constexpr int16 LIST_POS = 20; + static constexpr int16 SNUM_2 = 2; TraingMoreView::TraingMoreView() { @@ -26,314 +35,128 @@ namespace OHOS TraingMoreView::~TraingMoreView() { - DeInit(); + if (viewInitStatus == true) + { + DeInitView(); + } g_pTraingMoreView = nullptr; } TraingMoreView *TraingMoreView::GetInstance() { - return g_pTraingMoreView; } - - /* Traing:初始化list */ - void TraingMoreView::InitList() + /// @param item + void TraingMoreView::AddToTraingMoreList(const TraingMoreItem &item) { - // Add List to App - if (list1_ == nullptr) - { - list1_ = new UIList(); - } - list1_->SetPosition(35, 110); // widget's left position and top position - list1_->Resize(300, 1100); // widget's width and height - list1_->SetViewId("list1"); // Set style - list1_->SetStyle(STYLE_BACKGROUND_COLOR, 0xff000000); - list1_->SetStyle(STYLE_BACKGROUND_OPA, 0x00); - - // Set additional property - if (list1data_ == nullptr) - { - list1data_ = new List(); - } - - // 使用全局变量来初始化列表项 - for (int i = 0; i < 8; ++i) - { - IconItemNode *listData = new IconItemNode(); - // 检查是否需要分配内存空间 - if (listData->imagePath == nullptr) - { - listData->imagePath = new char[strlen(imagePaths[i]) + 1]; - } - strcpy(listData->imagePath, imagePaths[i]); - listData->txt = text[i]; - list1data_->PushBack(listData); - - // 释放内存空间 - // delete[] listData->imagePath; - // delete listData; - } - - if (list1adapter_ == nullptr) - { - list1adapter_ = new IconAdapter(); - } - list1adapter_->SetItemSize(250, 120); - list1adapter_->SetImageSize(130, 120); - list1adapter_->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30); - list1adapter_->SetData(list1data_); - list1_->SetAdapter(list1adapter_); - - // Add to scrollView1 - // scrollView1_->Add(list1_); - list1_->SetVisible(true); + p_TraingMoreListAdapter->AddItem(item); } - /* InitView:初始化界面*/ - void TraingMoreView ::InitView() + void TraingMoreView::InitView() { - if (container_ == nullptr) + if (scrollView == nullptr) { - container_ = new UIViewGroup(); - container_->SetPosition(0, 0, 466, 466); - container_->SetStyle(STYLE_BACKGROUND_OPA, 0); + scrollView = new UIScrollView(); } - // Add ScrollView to App - if (scrollView1_ == nullptr) - { - scrollView1_ = new UIScrollView(); - } - scrollView1_->SetPosition(0, 0); // widget's left position and top position - scrollView1_->Resize(466, 466); // widget's width and height - scrollView1_->SetViewId("scrollView1"); // Set style - scrollView1_->SetStyle(STYLE_BACKGROUND_OPA, 0xff); - // Add to rootView - container_->Add(scrollView1_); - scrollView1_->SetVisible(true); + scrollView->SetPosition(0, 0, HORIZONTAL_RESOLUTION, VERTICAL_RESOLUTION); + // scrollView->SetStyle(STYLE_BACKGROUND_OPA, 0xff); + scrollView->SetScrollBlankSize(52); + // scrollView->SetReboundSize(100); + scrollView->SetTouchable(true); + scrollView->SetDraggable(true); + scrollView->SetDirection(1); + draglistener = static_cast(TraingMorePresenter::GetInstance()); + scrollView->SetOnDragListener(draglistener); + /* -------------------------------------------------------------------------- */ // 初始化Lable - TraingModel::GetInstance()->InitLabel(label1_, 203, 52, 200, 60, "label1", "训练", DEFAULT_VECTOR_FONT_FILENAME, 30); - scrollView1_->Add(label1_); - // 初始化Button - TraingModel::GetInstance()->InitButton(button1_, 43, 120, 380, 100, BUTTON_FITNESS); - TraingModel::GetInstance()->InitButton(button2_, 43, 240, 380, 100, BUTTON_DANCE); - TraingModel::GetInstance()->InitButton(button1_, 43, 120, 380, 100, BUTTON_FITNESS); - TraingModel::GetInstance()->InitButton(button2_, 43, 240, 380, 100, BUTTON_DANCE); - TraingModel::GetInstance()->InitButton(button3_, 43, 360, 380, 100, BUTTON_REST); - TraingModel::GetInstance()->InitButton(button4_, 43, 480, 380, 100, BUTTON_BALL); - TraingModel::GetInstance()->InitButton(button5_, 43, 600, 380, 100, BUTTON_SWIMMING); - TraingModel::GetInstance()->InitButton(button6_, 43, 720, 380, 100, BUTTON_ICE); - TraingModel::GetInstance()->InitButton(button7_, 43, 840, 380, 100, BUTTON_LIMIT); - TraingModel::GetInstance()->InitButton(button8_, 43, 960, 380, 100, BUTTON_OTHER); - button1_->SetOnClickListener(static_cast(TraingMorePresenter::GetInstance())); - button2_->SetOnClickListener(static_cast(TraingMorePresenter::GetInstance())); - button3_->SetOnClickListener(static_cast(TraingMorePresenter::GetInstance())); - button4_->SetOnClickListener(static_cast(TraingMorePresenter::GetInstance())); - button5_->SetOnClickListener(static_cast(TraingMorePresenter::GetInstance())); - button6_->SetOnClickListener(static_cast(TraingMorePresenter::GetInstance())); - button7_->SetOnClickListener(static_cast(TraingMorePresenter::GetInstance())); - button8_->SetOnClickListener(static_cast(TraingMorePresenter::GetInstance())); - - - scrollView1_->Add(button1_); - scrollView1_->Add(button2_); - scrollView1_->Add(button3_); - scrollView1_->Add(button4_); - scrollView1_->Add(button5_); - scrollView1_->Add(button6_); - scrollView1_->Add(button7_); - scrollView1_->Add(button8_); - // 初始化image - TraingModel::GetInstance()->InitImageView(image1_, 360, 160, 100, 100, "image1", ICON_IMAGE); - TraingModel::GetInstance()->InitImageView(image2_, 360, 280, 100, 100, "image2", ICON_IMAGE); - TraingModel::GetInstance()->InitImageView(image3_, 360, 400, 100, 100, "image3", ICON_IMAGE); - TraingModel::GetInstance()->InitImageView(image4_, 360, 520, 100, 100, "image4", ICON_IMAGE); - TraingModel::GetInstance()->InitImageView(image5_, 360, 640, 100, 100, "image5", ICON_IMAGE); - TraingModel::GetInstance()->InitImageView(image6_, 360, 760, 100, 100, "image6", ICON_IMAGE); - TraingModel::GetInstance()->InitImageView(image7_, 360, 880, 100, 100, "image7", ICON_IMAGE); - TraingModel::GetInstance()->InitImageView(image8_, 360, 1000, 100, 100, "image8", ICON_IMAGE); - scrollView1_->Add(image1_); - scrollView1_->Add(image2_); - scrollView1_->Add(image3_); - scrollView1_->Add(image4_); - scrollView1_->Add(image5_); - scrollView1_->Add(image6_); - scrollView1_->Add(image7_); - scrollView1_->Add(image8_); - // 初始化list - InitList(); - scrollView1_->Add(list1_); + TraingModel::GetInstance()->InitLabelExt(title, 155, 52, 200, 60, "label1", STR_TRAINING, DEFAULT_VECTOR_FONT_FILENAME, 30); + scrollView->Add(title); + // UIList 的适配器 + p_TraingMoreListAdapter = new TraingMoreAdapter(); + p_TraingMoreListAdapter->SetItemClickListener(presenter_); + if (TraingMoreList == nullptr) + { + TraingMoreList = new UIList(); + } + TraingMoreList->SetPosition(More_LIST_POSITION_X, More_LIST_POSITION_Y); + TraingMoreList->Resize(HORIZONTAL_RESOLUTION, VERTICAL_RESOLUTION); + TraingMoreList->SetScrollBlankSize(More_SCROLLBLANKSIZE); + TraingMoreList->SetSelectPosition(HORIZONTAL_RESOLUTION / SNUM_2); // middle position + TraingMoreList->SetDraggable(true); + TraingMoreList->SetThrowDrag(false); + TraingMoreList->EnableAutoAlign(true); + TraingMoreList->SetElastic(true); // 设置回弹效果 + TraingMoreList->SetMaxScrollDistance(MAX_SCR_DIS); + TraingMoreList->SetYScrollBarVisible(true); // 设置滑动滚动条 + + // 增加表冠控制 + scrollView->SetRotateFactor(2); + scrollView->RequestFocus(); } - /* DeInit:删除组件*/ - void TraingMoreView::DeInit() + UIList *TraingMoreView::GetList() { - container_->RemoveAll(); - if (label1_ != nullptr) - { - delete label1_; - label1_ = nullptr; - } - if (button1_ != nullptr) - { - delete button1_; - button1_ = nullptr; - } - if (button8_ != nullptr) - { - delete button8_; - button8_ = nullptr; - } - if (button7_ != nullptr) - { - delete button7_; - button7_ = nullptr; - } - if (button6_ != nullptr) - { - delete button6_; - button6_ = nullptr; - } - if (button5_ != nullptr) - { - delete button5_; - button5_ = nullptr; - } - if (button4_ != nullptr) - { - delete button4_; - button4_ = nullptr; - } - if (button3_ != nullptr) - { - delete button3_; - button3_ = nullptr; - } - if (button2_ != nullptr) - { - delete button2_; - button2_ = nullptr; - } - if (image1_ != nullptr) - { - delete image1_; - image1_ = nullptr; - } - if (image2_ != nullptr) - { - delete image2_; - image2_ = nullptr; - } - if (image3_ != nullptr) - { - delete image3_; - image3_ = nullptr; - } - if (image4_ != nullptr) - { - delete image4_; - image4_ = nullptr; - } - if (image5_ != nullptr) - { - delete image5_; - image5_ = nullptr; - } - if (image6_ != nullptr) - { - delete image6_; - image6_ = nullptr; - } - if (image7_ != nullptr) - { - delete image7_; - image7_ = nullptr; - } - if (image8_ != nullptr) - { - delete image8_; - image8_ = nullptr; - } - if (list1_ != nullptr) - { - delete list1_; - list1_ = nullptr; - } - if (list1adapter_ != nullptr) - { - delete list1adapter_; - list1adapter_ = nullptr; - } - if (list1data_ != nullptr) - { - list1data_->Clear(); - delete list1data_; - list1data_ = nullptr; - } - if (scrollView1_ != nullptr) - { - scrollView1_->RemoveAll(); - delete scrollView1_; - scrollView1_ = nullptr; - } - if (container_ != nullptr) - { - container_->RemoveAll(); - delete container_; - container_ = nullptr; - } + return TraingMoreList; + } + void TraingMoreView::DeInitView() + { + // scrollView-> RemoveAll(); + RemoveAll(); + delete title; + title = nullptr; + + delete TraingMoreList; + TraingMoreList = nullptr; + + delete scrollView; + scrollView = nullptr; + + delete draglistener; + draglistener = nullptr; } void TraingMoreView::PreLoad(void) { - if (!viewiInitStatus) + if (!viewInitStatus) { InitView(); - viewiInitStatus = true; + viewInitStatus = true; } } + + /// @brief 页面启动时需要执行的代码逻辑 void TraingMoreView::OnStart() { - 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(TraingMorePresenter::GetInstance()); - if (draglistener == nullptr) - { - return; - } - container_->SetOnDragListener(draglistener); - - container_->SetTouchable(true); - container_->SetDraggable(true); - + View::OnStart(); + BaseView::RootView(Color::Black().full); PreLoad(); - RootView::GetInstance()->Add(container_); } + /// @brief 创建页面的视图。 void TraingMoreView::OnSetUpView() { - View::OnSetUpView(); + // scrollView->Add(title); + scrollView->Add(TraingMoreList); + scrollView->SetStyle(STYLE_BACKGROUND_OPA, OPA_TRANSPARENT); + RootView::GetInstance()->Add(scrollView); + TraingMoreList->SetAdapter(p_TraingMoreListAdapter); + // TraingMoreList->RefreshList(); // 刷新列表 Draw(); } + /// @brief 销毁页面的视图。 void TraingMoreView::OnTearDownView() { - View::OnTearDownView(); return; } + /// @brief 页面结束时需要执行的销毁逻辑。 void TraingMoreView::OnStop() { View::OnStop(); RootView::GetInstance()->RemoveAll(); + RootView::GetInstance()->ClearFocus(); return; } -} +} \ No newline at end of file diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_other/src/TraingOtherView.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_other/src/TraingOtherView.cpp index 348950d33..5e460dbda 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_other/src/TraingOtherView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_other/src/TraingOtherView.cpp @@ -61,7 +61,7 @@ namespace OHOS /* -------------------------------------------------------------------------- */ // 初始化Lable - TraingModel::GetInstance()->InitLabel(title, 173, 52, 200, 60, "label1", "其他运动", DEFAULT_VECTOR_FONT_FILENAME, 30); + TraingModel::GetInstance()->InitLabelExt(title, 155, 52, 200, 60, "label1",STR_OTHER_TITLE, DEFAULT_VECTOR_FONT_FILENAME, 30); scrollView->Add(title); // UIList 的适配器 p_TraingOtherListAdapter = new TraingOtherAdapter(); diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_rest/src/TraingRestPresenter.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_rest/src/TraingRestPresenter.cpp index 43fb13256..b55faab23 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_rest/src/TraingRestPresenter.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_rest/src/TraingRestPresenter.cpp @@ -1,19 +1,3 @@ -/*** - * @Author: Caisking 3449750381@qq.com - * @Date: 2024-03-19 17:37:19 - * @LastEditors: Caisking 3449750381@qq.com - * @LastEditTime: 2024-03-26 19:51:06 - * @FilePath: /sdk/application/wearable/fd230app/nativeui/traing/training_list_rest/src/TraingRestPresenter.cpp - * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE - */ -/*** - * @Author: Caisking 3449750381@qq.com - * @Date: 2024-03-19 17:37:19 - * @LastEditors: Caisking 3449750381@qq.com - * @LastEditTime: 2024-03-26 14:23:32 - * @FilePath: /sdk/application/wearable/fd230app/nativeui/traing/src/TraingRestPresenter.cpp - * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE - */ #include "AppViewIDs.h" #include "components/ui_label_ext.h" diff --git a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_rest/src/TraingRestView.cpp b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_rest/src/TraingRestView.cpp index 4abce772f..93354eef0 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_rest/src/TraingRestView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/traing/training_list_rest/src/TraingRestView.cpp @@ -61,7 +61,7 @@ namespace OHOS /* -------------------------------------------------------------------------- */ // 初始化Lable - TraingModel::GetInstance()->InitLabel(title, 173, 52, 200, 60, "label1", "休闲运动", DEFAULT_VECTOR_FONT_FILENAME, 30); + TraingModel::GetInstance()->InitLabelExt(title, 155, 52, 200, 60, "label1", STR_RECREATIONAL_LIST, DEFAULT_VECTOR_FONT_FILENAME, 30); scrollView->Add(title); // UIList 的适配器 p_TraingRestListAdapter = new TraingRestAdapter(); diff --git a/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/font/en.lang b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/font/en.lang index eb687d040..a3ed1b8d6 100644 Binary files a/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/font/en.lang and b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/font/en.lang differ diff --git a/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/font/ui_resource_string.h b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/font/ui_resource_string.h index d0c2d220b..ba90556f0 100644 --- a/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/font/ui_resource_string.h +++ b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/font/ui_resource_string.h @@ -185,12 +185,25 @@ enum UIResourceTextId : uint16_t { STR_OTHER_STILL = 172, STR_OTHER_TILTING = 173, STR_OTHER_WHEELCHAIR = 174, - STR_MAX_ID = 175, + STR_EXERCISE_LIST = 175, + STR_BALL_LIST = 176, + STR_WATER_LIST = 177, + STR_DANCING_LIST = 178, + STR_EXTREME_LIST = 179, + STR_ICE_LIST = 180, + STR_RECREATIONAL_LIST = 181, + STR_OTHER_LIST = 182, + STR_DANCING_TITLE = 183, + STR_BALL_LIST_TITLE = 184, + STR_OTHER_TITLE = 185, + STR_EXERCISE_TITLE = 186, + STR_TRAINING = 187, + STR_MAX_ID = 188, }; // UIResourceTextId enum FontLanguageId : uint8_t { - LANGUAGE_ID_EN, LANGUAGE_ID_ZH, + LANGUAGE_ID_EN, LANGUAGE_ID_MAX }; // UITextLanguageTextId } diff --git a/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/font/zh.lang b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/font/zh.lang index a9aa37ad9..18730d308 100644 Binary files a/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/font/zh.lang and b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/font/zh.lang differ