From 8b95334d306bbccd91ecee48ed23f26752887abd Mon Sep 17 00:00:00 2001 From: Caisking <3449750381@qq.com> Date: Thu, 20 Jun 2024 19:53:10 +0800 Subject: [PATCH] =?utf8?q?=E4=BC=98=E5=8C=96=E5=8D=A1=E7=89=87=E7=AE=A1?= =?utf8?q?=E7=90=86=EF=BC=8C=E6=9C=AA=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../nativelauncher/include/UiConfig.h | 9 +- .../nativeui/main/include/MainModel.h | 28 +- .../fd230app/nativeui/main/src/MainModel.cpp | 49 ++- .../nativeui/message/include/MessageModel.h | 7 + .../message/include/MessageShowView.h | 6 + .../nativeui/message/src/MessageModel.cpp | 8 + .../set_card/include/SetCardPresenter.h | 4 +- .../nativeui/set_card/src/SetCardModel.cpp | 38 +- .../nativeui/set_card/src/SetCardView.cpp | 369 ++++++++++-------- .../nativeui/set_dial/src/SetDialModel.cpp | 2 +- 10 files changed, 310 insertions(+), 210 deletions(-) diff --git a/code/sdk/application/wearable/fd230app/nativelauncher/include/UiConfig.h b/code/sdk/application/wearable/fd230app/nativelauncher/include/UiConfig.h index faff5e53c..6542e5fa3 100644 --- a/code/sdk/application/wearable/fd230app/nativelauncher/include/UiConfig.h +++ b/code/sdk/application/wearable/fd230app/nativelauncher/include/UiConfig.h @@ -18,15 +18,14 @@ namespace OHOS typedef enum { WATCH_FACE = 0, /* 主表盘枚举值不能修改 */ + SETCARD, /*在下方添加新card 与cardinfomap保持一致*/ + MUSIC_PLAYER, HEART_RATE, + TRAINING, COMPASS, - MUSIC_PLAYER, BLOODOXGEN, - WEATHER, - TRAINING, - // ACTIVITY, - SETCARD, GOAL, + WEATHER, MAX_CARD, } CardId; diff --git a/code/sdk/application/wearable/fd230app/nativeui/main/include/MainModel.h b/code/sdk/application/wearable/fd230app/nativeui/main/include/MainModel.h index 1d82fac85..2340e85b9 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/main/include/MainModel.h +++ b/code/sdk/application/wearable/fd230app/nativeui/main/include/MainModel.h @@ -1,3 +1,9 @@ +/*** + * @Date: 2024-05-30 15:59:37 + * @LastEditors: Caisking 3449750381@qq.com + * @LastEditTime: 2024-06-20 16:26:12 + * @FilePath: /XTS_FD230/FD230/code/sdk/application/wearable/fd230app/nativeui/main/include/MainModel.h + */ /* * Copyright (c) CompanyNameMagicTag 2021-2021. All rights reserved. * Description: MainModel.h @@ -10,27 +16,33 @@ #include #include "UiConfig.h" - -namespace OHOS { - typedef struct { +#include +namespace OHOS +{ + typedef struct + { CardId id; + bool visable; const char *cardImg; } CardInfo; - typedef struct { + typedef struct + { DialId id; const char *dialName; const char *dialImg; uint8_t freq; } DialInfo; - typedef struct { + typedef struct + { uint8_t dialFlag; uint8_t dialId; std::string dialFullName; } DialSetting; - class MainModel { + class MainModel + { public: static MainModel &GetInstance(void); void InitCardSettings(void); @@ -47,6 +59,8 @@ namespace OHOS { void SetFromSetCardView(bool isFrom); void SetFromCardId(uint8_t cardId); uint8_t GetFromCardId(void); + bool GetCardVisable(CardId card); + private: void InitDialSettingDefault(void); MainModel(); @@ -54,7 +68,7 @@ namespace OHOS { MainModel &operator=(const MainModel &); virtual ~MainModel(); - CardId cardSettings[CARD_SETTING_COUNT_MAX] = { MAX_CARD }; + CardId cardSettings[CARD_SETTING_COUNT_MAX] = {MAX_CARD}; uint8_t cardSettingCount{0}; DialSetting dialSetting; bool isFromSetCardView{false}; diff --git a/code/sdk/application/wearable/fd230app/nativeui/main/src/MainModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/main/src/MainModel.cpp index 498bd5224..a23a83112 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/main/src/MainModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/main/src/MainModel.cpp @@ -10,25 +10,23 @@ #include "kv_store.h" #include "securec.h" #include "wearable_log.h" - +#include namespace OHOS { static const int CARD_SETTING_VALUE_LEN = 32; static const int DIAL_SETTING_VALUE_LEN = 64; // 更新主界面卡片需要更新Map const CardInfo cardInfoMap[] = { - {HEART_RATE, PNG_SET_CARD_HEART}, - {COMPASS, PNG_SET_CARD_COMPASS}, - {MUSIC_PLAYER, PNG_SET_CARD_PLAYER}, - {BLOODOXGEN, PNG_SET_CARD_BLOOD}, - {WEATHER, PNG_SET_CARD_WEATHER}, - {TRAINING, PNG_SET_CARD_TRAIN}, - {SETCARD, PNG_SET_CARD_MAIN}, - {GOAL, PNG_SET_CARD_ACTIVITY}, - - // {ACTIVITY, PNG_SET_CARD_ACTIVITY}, + {MUSIC_PLAYER, true, PNG_SET_CARD_PLAYER}, // 音乐播放器 + {HEART_RATE, true, PNG_SET_CARD_HEART}, // 心率检测 + {TRAINING, false, PNG_SET_CARD_TRAIN}, // 训练 + {COMPASS, true, PNG_SET_CARD_COMPASS}, // 指南针 + {BLOODOXGEN, false, PNG_SET_CARD_BLOOD}, // 血氧检测 + {GOAL, true, PNG_SET_CARD_ACTIVITY}, // 每日目标 + {WEATHER, false, PNG_SET_CARD_WEATHER}, // 天气 }; - /*自定义map?*/ + + /*自定义表盘map?*/ const DialInfo dialInfoMap[] = { {DIAL_CLOCK, "KUMI", DEFAULT_DIALPER_PATH, DEFAULT_TASK_PERIOD}, }; @@ -66,7 +64,15 @@ namespace OHOS } return nullptr; } - + bool MainModel::GetCardVisable(CardId card) + { + const CardInfo *info = GetCardInfo(card); + if (info != nullptr) + { + return info->visable; + } + return false; + } void MainModel::InitCardSettings(void) { char temp[CARD_SETTING_VALUE_LEN] = {0}; @@ -94,18 +100,23 @@ namespace OHOS else { /* 使用默认card配置 */ + cardSettings[index++] = SETCARD; cardSettings[index++] = WATCH_FACE; - cardSettings[index++] = HEART_RATE; - cardSettings[index++] = COMPASS; - // cardSettings[index++] = ACTIVITY; - cardSettings[index++] = MUSIC_PLAYER; - cardSettings[index++] = SETCARD; // 默认卡片增加设置卡片 + /**遍历cardInfoMap 的默认visable选项,true的被设置进来 */ + for (uint8_t i = WATCH_FACE + 2; i < MAX_CARD; i++) + { + if (GetCardVisable((CardId)i) == true) + { + cardSettings[index++] = (CardId)i; + } + } cardSettingCount = index; } } void MainModel::DeleteCardSetting(uint8_t index) { + /**找到 cardInfoMap 中的 对应 CardId , 在 cardSettings中删除 */ char temp[CARD_SETTING_VALUE_LEN] = {0}; for (uint8_t i = 0; i < cardSettingCount; i++) { @@ -131,6 +142,7 @@ namespace OHOS void MainModel::AddCardSetting(uint8_t index) { + /** 找到 cardInfoMap 中的 对应 CardId , 在 cardSettings中添加*/ char temp[CARD_SETTING_VALUE_LEN] = {0}; if (cardSettingCount >= CARD_SETTING_COUNT_MAX) { @@ -259,4 +271,5 @@ namespace OHOS { return fromCardId; } + } \ No newline at end of file diff --git a/code/sdk/application/wearable/fd230app/nativeui/message/include/MessageModel.h b/code/sdk/application/wearable/fd230app/nativeui/message/include/MessageModel.h index c04313803..3d8415698 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/message/include/MessageModel.h +++ b/code/sdk/application/wearable/fd230app/nativeui/message/include/MessageModel.h @@ -1,3 +1,9 @@ +/*** + * @Date: 2024-04-15 10:55:58 + * @LastEditors: Caisking 3449750381@qq.com + * @LastEditTime: 2024-06-20 10:02:36 + * @FilePath: /XTS_FD230/FD230/code/sdk/application/wearable/fd230app/nativeui/message/include/MessageModel.h + */ #ifndef MESSAGE_MODEL_H #define MESSAGE_MODEL_H @@ -41,6 +47,7 @@ namespace OHOS void SetCurrentMessageData(MessageData *data); // 设置当前消息数据 bool ClearAllData(); // 清除所有数据 bool DeleteSingleItem(); // 删除单个项 + MessageData *GetNewestData(); // 获取最新信息项 private: MessageModel(); diff --git a/code/sdk/application/wearable/fd230app/nativeui/message/include/MessageShowView.h b/code/sdk/application/wearable/fd230app/nativeui/message/include/MessageShowView.h index 2205141f7..8e30a08a6 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/message/include/MessageShowView.h +++ b/code/sdk/application/wearable/fd230app/nativeui/message/include/MessageShowView.h @@ -1,3 +1,9 @@ +/*** + * @Date: 2024-06-17 19:38:57 + * @LastEditors: Caisking 3449750381@qq.com + * @LastEditTime: 2024-06-20 10:16:16 + * @FilePath: /XTS_FD230/FD230/code/sdk/application/wearable/fd230app/nativeui/message/include/MessageShowView.h + */ #ifndef MessageShow_VIEW_H diff --git a/code/sdk/application/wearable/fd230app/nativeui/message/src/MessageModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/message/src/MessageModel.cpp index 87b8699be..0ec8dcb67 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/message/src/MessageModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/message/src/MessageModel.cpp @@ -196,5 +196,13 @@ namespace OHOS { return true; } + // 获取最新消息项 + MessageData *MessageModel::GetNewestData() + { + std::vector messageVector = LoadMessageData(); + numberOfItems = messageVector.size(); + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "the numberOfItems is %d", numberOfItems); + return &messageVector[numberOfItems - 1]; + } } diff --git a/code/sdk/application/wearable/fd230app/nativeui/set_card/include/SetCardPresenter.h b/code/sdk/application/wearable/fd230app/nativeui/set_card/include/SetCardPresenter.h index 716ee877d..d8d712ff0 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/set_card/include/SetCardPresenter.h +++ b/code/sdk/application/wearable/fd230app/nativeui/set_card/include/SetCardPresenter.h @@ -1,7 +1,7 @@ /*** * @Date: 2024-06-07 16:39:04 * @LastEditors: Caisking 3449750381@qq.com - * @LastEditTime: 2024-06-11 20:18:34 + * @LastEditTime: 2024-06-20 15:08:41 * @FilePath: /XTS_FD230/FD230/code/sdk/application/wearable/fd230app/nativeui/set_card/include/SetCardPresenter.h */ /* @@ -29,7 +29,7 @@ static const char *SET_CARD_DEL_CANCEL = "setcarddelcancel"; static const char *SET_CARD_IMG = "setcardimg"; static const char *SET_CARD_MAIN = "setmaincard"; -const uint16_t MISS_SET_CARD_OPERATION_TIME = 3000; +const uint16_t MISS_SET_CARD_OPERATION_TIME = 15000; class SetCardView; class SetCardModel; diff --git a/code/sdk/application/wearable/fd230app/nativeui/set_card/src/SetCardModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/set_card/src/SetCardModel.cpp index 32ca2b547..c47b3c8d8 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/set_card/src/SetCardModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/set_card/src/SetCardModel.cpp @@ -1,3 +1,9 @@ +/*** + * @Date: 2024-04-15 10:55:58 + * @LastEditors: Caisking 3449750381@qq.com + * @LastEditTime: 2024-06-20 15:35:58 + * @FilePath: /XTS_FD230/FD230/code/sdk/application/wearable/fd230app/nativeui/set_card/src/SetCardModel.cpp + */ /* * Copyright (c) CompanyNameMagicTag 2021-2021. All rights reserved. * Description: SetCardModel.cpp @@ -10,7 +16,8 @@ #include "kv_store.h" #include "securec.h" -namespace OHOS { +namespace OHOS +{ SetCardModel::SetCardModel() {} SetCardModel::~SetCardModel() {} @@ -23,16 +30,36 @@ namespace OHOS { void SetCardModel::InitCardShowList(void) { + /**遍历所有 cardInfoMap 显示出来**/ + for (uint8_t i = WATCH_FACE + 2; i < MAX_CARD; i++) + { + /*表盘与设置卡片属于不可配置*/ + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "All:cardId = %d", i); + const CardInfo *info = MainModel::GetInstance().GetCardInfo((CardId)i); + if (info == nullptr) + { + continue; + } + cardShowList[cardShowCount++] = info->id; + } + + // 与cardInfoMap 一一对应。cardSettings里有的对应cardid_visable应该是true + // bool cardid_visable[MapCount] = {false}; + // 用cardInfoMap初始化所有 缩略图的同时,用cardid_visable 要初始化按钮显示哪个。 +#if 0 MainModel::GetInstance().InitCardSettings(); uint8_t cardCount = MainModel::GetInstance().GetCardSettingCount(); CardId *cardSettings = MainModel::GetInstance().GetCardSettings(); cardShowCount = 0; - for (uint8_t i = 0; i < cardCount; i++) { - if (cardSettings[i] == WATCH_FACE) { + for (uint8_t i = 0; i < cardCount; i++) + { + if (cardSettings[i] == WATCH_FACE || cardSettings[i] == SETCARD) + { continue; } cardShowList[cardShowCount++] = cardSettings[i]; } +#endif } uint8_t *SetCardModel::GetCardShowList(void) @@ -57,7 +84,10 @@ namespace OHOS { void SetCardModel::DeleteCardSetting(void) { - MainModel::GetInstance().DeleteCardSetting(selectedCardIndex); + // 只是设置对应cardid_visable 的值 + // 并根据 当前的所有为true cardid 生成 新的cardSettings 保存起来 + + // MainModel::GetInstance().DeleteCardSetting(selectedCardIndex); } void SetCardModel::SetSelectedCard(uint8_t cardId) diff --git a/code/sdk/application/wearable/fd230app/nativeui/set_card/src/SetCardView.cpp b/code/sdk/application/wearable/fd230app/nativeui/set_card/src/SetCardView.cpp index 0efb39e47..30dfc8dc6 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/set_card/src/SetCardView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/set_card/src/SetCardView.cpp @@ -9,208 +9,231 @@ #include "SetCardView.h" #include "SetCardPresenter.h" -namespace OHOS { -SetCardView::SetCardView():contentList_(UIList::HORIZONTAL) +namespace OHOS { - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetCardView::SetCardView"); -} - -SetCardView::~SetCardView() -{ - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetCardView::~SetCardView"); - if (deleteView_ != nullptr) { - delete deleteView_; - deleteView_ = nullptr; - } - - if (noCardView_ != nullptr) { - delete noCardView_; - noCardView_ = nullptr; + SetCardView::SetCardView() : contentList_(UIList::HORIZONTAL) + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetCardView::SetCardView"); } - if (setCardAdapter_ != nullptr) { - delete setCardAdapter_; - setCardAdapter_ = nullptr; - } -} + SetCardView::~SetCardView() + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetCardView::~SetCardView"); + if (deleteView_ != nullptr) + { + delete deleteView_; + deleteView_ = nullptr; + } -void SetCardView::OnStart() -{ - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetCardView::OnStart"); - View::OnStart(); - SetContainerView(new UIViewGroup()); - container_->SetPosition(0, 0, Screen::GetInstance().GetWidth(), Screen::GetInstance().GetHeight()); - setCardAdapter_ = new SetCardAdapter(); - setCardAdapter_->SetItemClickListener(presenter_); - SetUpListInfo(); - SetUpListView(); - SetUpDeleteView(); - SetUpAddView(); -} + if (noCardView_ != nullptr) + { + delete noCardView_; + noCardView_ = nullptr; + } -void SetCardView::OnSetUpView() -{ - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetCardView::OnSetUpView"); - View::OnSetUpView(); - ShowDeleteView(false); - if (setCardAdapter_->GetCount() == 0) { - ShowAddView(true); + if (setCardAdapter_ != nullptr) + { + delete setCardAdapter_; + setCardAdapter_ = nullptr; + } } -} - -void SetCardView::OnTearDownView() -{ - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetCardView::OnTearDownView"); - View::OnTearDownView(); -} -void SetCardView::OnStop() -{ - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetCardView::OnStop"); - View::OnStop(); - RootView::GetInstance()->ClearOnKeyActListener(); - if (container_ != nullptr) { - container_->RemoveAll(); - delete container_; - container_ = nullptr; + void SetCardView::OnStart() + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetCardView::OnStart"); + View::OnStart(); + SetContainerView(new UIViewGroup()); + container_->SetPosition(0, 0, Screen::GetInstance().GetWidth(), Screen::GetInstance().GetHeight()); + setCardAdapter_ = new SetCardAdapter(); + setCardAdapter_->SetItemClickListener(presenter_); + SetUpListInfo(); + SetUpListView(); + SetUpDeleteView(); + SetUpAddView(); } -} -void SetCardView::SetUpListInfo(void) -{ - presenter_->InitCardShowList(); - uint8_t num = presenter_->GetCardShowCount(); - uint8_t *cardSettings = presenter_->GetCardShowList(); - uint8_t selectCardId = presenter_->GetSelectedCard(); - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetUpListInfo::selectCardId = %u", selectCardId); - setCardAdapter_->ClearItem(); - for (uint8_t i = 0; i < num; i++) { - const CardInfo *info = MainModel::GetInstance().GetCardInfo( - static_cast(cardSettings[i])); - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetUpListInfo::%d %s", info->id, info->cardImg); - if (selectCardId == info->id) { - presenter_->SetSelectedCardIndex(i); - scrollIndex_ = i; - presenter_->SetSelectedCard(MAX_CARD); - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetUpListInfo::scrollIndex_ = %u", scrollIndex_); + void SetCardView::OnSetUpView() + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetCardView::OnSetUpView"); + View::OnSetUpView(); + ShowDeleteView(false); + if (setCardAdapter_->GetCount() == 0) + { + ShowAddView(true); } - setCardAdapter_->AddListItem(*info); } -} -void SetCardView::SetUpListView(void) -{ - addImg_.SetPosition(187, 10); - addImg_.Resize(80, 80); - addImg_.SetResizeMode(UIImageView::FILL); - addImg_.SetStyle(STYLE_IMAGE_OPA, OPA_OPAQUE); - addImg_.SetSrc(PNG_SET_CARD_ADD); - addImg_.SetViewId(SET_CARD_ADD); - addImg_.SetVisible(false); - - contentList_.SetPosition(0, 92); - contentList_.Resize(HORIZONTAL_RESOLUTION, 280); - contentList_.SetScrollBlankSize(HORIZONTAL_RESOLUTION / 2); - contentList_.SetSelectPosition(HORIZONTAL_RESOLUTION / 2); - contentList_.SetDraggable(true); - contentList_.SetThrowDrag(true); - contentList_.EnableAutoAlign(true); - contentList_.SetScrollStateListener(presenter_); - contentList_.SetMaxScrollDistance(1000); - contentList_.SetAdapter(setCardAdapter_); - contentList_.SetVisible(false); - contentList_.ScrollTo(scrollIndex_); - - delImg_.SetPosition(187, 374); - delImg_.Resize(80, 80); - delImg_.SetResizeMode(UIImageView::FILL); - delImg_.SetStyle(STYLE_IMAGE_OPA, OPA_OPAQUE); - delImg_.SetSrc(PNG_SET_CARD_DEL); - delImg_.SetViewId(SET_CARD_DEL); - delImg_.SetVisible(false); - - addImg_.SetTouchable(true); - addImg_.SetOnClickListener(presenter_); - delImg_.SetTouchable(true); - delImg_.SetOnClickListener(presenter_); - - container_->Add(&addImg_); - container_->Add(&contentList_); - container_->Add(&delImg_); -} + void SetCardView::OnTearDownView() + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetCardView::OnTearDownView"); + View::OnTearDownView(); + } -void SetCardView::SetUpDeleteView(void) -{ - deleteView_ = new SetCardDeleteView(presenter_); - if (deleteView_ == nullptr) { - return; + void SetCardView::OnStop() + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetCardView::OnStop"); + View::OnStop(); + RootView::GetInstance()->ClearOnKeyActListener(); + if (container_ != nullptr) + { + container_->RemoveAll(); + delete container_; + container_ = nullptr; + } } - deleteView_->SetVisible(false); - container_->Add(deleteView_); -} -void SetCardView::SetUpAddView(void) -{ - noCardView_ = new SetCardNoCardView(presenter_); - if (noCardView_ == nullptr) { - return; + /*加载显示的缩约图*/ + void SetCardView::SetUpListInfo(void) + { + presenter_->InitCardShowList(); + uint8_t num = presenter_->GetCardShowCount(); + uint8_t *cardSettings = presenter_->GetCardShowList(); + uint8_t selectCardId = presenter_->GetSelectedCard(); + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetUpListInfo::selectCardId = %u", selectCardId); + setCardAdapter_->ClearItem(); + for (uint8_t i = 0; i < num; i++) + { + const CardInfo *info = MainModel::GetInstance().GetCardInfo( + static_cast(cardSettings[i])); + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetUpListInfo::%d %s", info->id, info->cardImg); + if (selectCardId == info->id) + { + presenter_->SetSelectedCardIndex(i); + scrollIndex_ = i; + presenter_->SetSelectedCard(MAX_CARD); + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetUpListInfo::scrollIndex_ = %u", scrollIndex_); + } + setCardAdapter_->AddListItem(*info); + } } - noCardView_->SetVisible(false); - container_->Add(noCardView_); -} -void SetCardView::ShowCardListView(bool show) -{ - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetCardView::ShowCardListView %u", show); - if (show) { - addImg_.SetVisible(true); - contentList_.SetVisible(true); - delImg_.SetVisible(true); - } else { + + void SetCardView::SetUpListView(void) + { + /* ---- 根据 cardSettings 中的CardId 确认是否是已添加的 ,+号是cardSettings中有的,-号是其它card ---- */ + addImg_.SetPosition(187, 10); + addImg_.Resize(80, 80); + addImg_.SetResizeMode(UIImageView::FILL); + addImg_.SetStyle(STYLE_IMAGE_OPA, OPA_OPAQUE); + addImg_.SetSrc(PNG_SET_CARD_ADD); + addImg_.SetViewId(SET_CARD_ADD); addImg_.SetVisible(false); + + contentList_.SetPosition(0, 92); + contentList_.Resize(HORIZONTAL_RESOLUTION, 280); + contentList_.SetScrollBlankSize(HORIZONTAL_RESOLUTION / 2); + contentList_.SetSelectPosition(HORIZONTAL_RESOLUTION / 2); + contentList_.SetDraggable(true); + contentList_.SetThrowDrag(true); + contentList_.EnableAutoAlign(true); + contentList_.SetScrollStateListener(presenter_); + contentList_.SetMaxScrollDistance(1000); + contentList_.SetAdapter(setCardAdapter_); contentList_.SetVisible(false); + contentList_.ScrollTo(scrollIndex_); + + delImg_.SetPosition(187, 374); + delImg_.Resize(80, 80); + delImg_.SetResizeMode(UIImageView::FILL); + delImg_.SetStyle(STYLE_IMAGE_OPA, OPA_OPAQUE); + delImg_.SetSrc(PNG_SET_CARD_DEL); + delImg_.SetViewId(SET_CARD_DEL); delImg_.SetVisible(false); + + addImg_.SetTouchable(true); + addImg_.SetOnClickListener(presenter_); + delImg_.SetTouchable(true); + delImg_.SetOnClickListener(presenter_); + + container_->Add(&addImg_); + container_->Add(&contentList_); + container_->Add(&delImg_); } -} -void SetCardView::ShowDeleteView(bool show) -{ - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetCardView::ShowDeleteView %u", show); - if (show) { - ShowCardListView(false); - deleteView_->SetVisible(true); - } else { - ShowCardListView(true); + void SetCardView::SetUpDeleteView(void) + { + deleteView_ = new SetCardDeleteView(presenter_); + if (deleteView_ == nullptr) + { + return; + } deleteView_->SetVisible(false); + container_->Add(deleteView_); } -} -void SetCardView::ShowAddView(bool show) -{ - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetCardView::ShowAddView %u", show); - if (show) { - ShowCardListView(false); - noCardView_->SetVisible(true); - } else { - ShowCardListView(true); + void SetCardView::SetUpAddView(void) + { + noCardView_ = new SetCardNoCardView(presenter_); + if (noCardView_ == nullptr) + { + return; + } noCardView_->SetVisible(false); + container_->Add(noCardView_); } -} -void SetCardView::RefreshCardList(void) -{ - contentList_.RemoveAll(); - SetUpListInfo(); - contentList_.RefreshList(); - if (setCardAdapter_->GetCount() == 0) { - ShowAddView(true); + void SetCardView::ShowCardListView(bool show) + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetCardView::ShowCardListView %u", show); + if (show) + { + addImg_.SetVisible(true); + contentList_.SetVisible(true); + delImg_.SetVisible(true); + } + else + { + addImg_.SetVisible(false); + contentList_.SetVisible(false); + delImg_.SetVisible(false); + } } -} -void SetCardView::SaveSelectCardIndex(void) -{ - uint8_t cardIdex = contentList_.GetSelectView()->GetViewIndex(); - presenter_->SetSelectedCardIndex(cardIdex); -} + void SetCardView::ShowDeleteView(bool show) + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetCardView::ShowDeleteView %u", show); + if (show) + { + ShowCardListView(false); + deleteView_->SetVisible(true); + } + else + { + ShowCardListView(true); + deleteView_->SetVisible(false); + } + } + + void SetCardView::ShowAddView(bool show) + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SetCardView::ShowAddView %u", show); + if (show) + { + ShowCardListView(false); + noCardView_->SetVisible(true); + } + else + { + ShowCardListView(true); + noCardView_->SetVisible(false); + } + } + + void SetCardView::RefreshCardList(void) + { + contentList_.RemoveAll(); + SetUpListInfo(); + contentList_.RefreshList(); + if (setCardAdapter_->GetCount() == 0) + { + ShowAddView(true); + } + } + + void SetCardView::SaveSelectCardIndex(void) + { + uint8_t cardIdex = contentList_.GetSelectView()->GetViewIndex(); + presenter_->SetSelectedCardIndex(cardIdex); + } } diff --git a/code/sdk/application/wearable/fd230app/nativeui/set_dial/src/SetDialModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/set_dial/src/SetDialModel.cpp index de7cd96c4..6483c590d 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/set_dial/src/SetDialModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/set_dial/src/SetDialModel.cpp @@ -45,7 +45,7 @@ namespace OHOS std::unordered_map registeredDials{ {DEFAULT_DIAL_ID_1, "KUMI"}, {DEFAULT_DIAL_ID_2, "classic"}, // 经典表盘 - {101, "motiondial"}, // 运动表盘 + {101, "sportdial"}, // 运动表盘 {102, "kaleidoscope"}, // 万花筒表盘102 {MAX_DEFAULT_DIAL_ID, "jellyfish"}, // 水母表盘 }; -- 2.17.1