${CMAKE_CURRENT_SOURCE_DIR}/nativeui/message/src/MessageShowPresenter.cpp
${CMAKE_CURRENT_SOURCE_DIR}/nativeui/message/src/MessageShowView.cpp
${CMAKE_CURRENT_SOURCE_DIR}/nativeui/message/src/MessageCardView.cpp
+ ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/message/src/MessageLackView.cpp
+ ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/message/src/MessageControlView.cpp
#遥控拍照
${CMAKE_CURRENT_SOURCE_DIR}/nativeui/takephotos/src/TakephotosPresenter.cpp
#include "weather/include/WeatherControlView.h"
#include "goal/include/goalControlView.h"
-#include "message/include/MessageCardView.h"
+#include "message/include/MessageControlView.h"
#include "set_card/include/SetMainView.h"
namespace OHOS
{
UICardPage *InitBloodOxygenPage(void);
UICardPage *InitWeatherPage(void);
UICardPage *InitGoalPage(void);
-
+
UICardPage *InitTrainingPage(void);
UICardPage *InitApplistPage(void);
UICardPage *InitSetMainPage(void);
private:
PullUpDownView *dropDownView{nullptr};
UICardPage *mainClockView{nullptr};
- MessageCardView *messageView{nullptr};
+ MessageControlView *messageView{nullptr};
UILabel *MessageLable = nullptr;
ActivityWeekView *activityWeekView{nullptr};
PlayersView *playersView{nullptr};
dropDownView->SetPosition(0, 0, Screen::GetInstance().GetWidth(), Screen::GetInstance().GetHeight());
dropDownView->SetStyle(STYLE_BACKGROUND_OPA, OPA_TRANSPARENT);
/* -------------------------------------------------------------------------- */
- messageView = new MessageCardView();
+ messageView = new MessageControlView();
if (messageView == nullptr)
{
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "messageView new fail");
+/***
+ * @Date: 2024-04-15 10:55:58
+ * @LastEditors: Caisking 3449750381@qq.com
+ * @LastEditTime: 2024-06-19 17:56:08
+ * @FilePath: /XTS_FD230/FD230/code/sdk/application/wearable/fd230app/nativeui/message/include/MessageCardView.h
+ */
+/*
+ * Copyright (c) CompanyNameMagicTag 2021-2021. All rights reserved.
+ * Description: MessageCardView.h
+ * Author:
+ * Create: 2021-12-21
+ */
#ifndef MESSAGE_CARD_VIEW_H
#define MESSAGE_CARD_VIEW_H
+#include "View.h"
#include "components/root_view.h"
-#include "components/ui_card_page.h"
-#include "wearable_log.h"
-#include "message/include/MessageView.h"
-#include "components/ui_label_button_ext.h"
-#include "components/ui_image_animator.h"
-#include "components/ui_image_view.h"
-#include "components/ui_button.h"
+#include "components/ui_label.h"
#include "components/ui_label_ext.h"
+#include "components/ui_image_view.h"
+#include "ChangeSliceListener.h"
+#include "UiConfig.h"
+#include "AppGroupView.h"
+#include "components/ui_label_button_ext.h"
+#include "message/include/MessageCardView.h"
+#include "components/ui_label_button_ext.h"
+#include "message/include/MessageAdapter.h"
+#include "message/include/MessageItemView.h"
+#include "message/include/MessageModel.h"
namespace OHOS
{
- class MessageCardView : public UICardPage
+ class MessageCardView : public AppGroupView
{
public:
MessageCardView();
- virtual ~MessageCardView();
- bool InitView(void);
- void PreLoad(void) override;
- void UnLoad(void) override;
+ ~MessageCardView() override;
+ static MessageCardView *GetInstance(void);
+
+ void AddMessageToList(const MessageListItem &item);
+ bool InitPage(void);
+ bool InitView(void *caller) override;
+ bool GetInitViewState(void);
+ void SetUpView(MessageCardView *messageCardView);
+ UIList *GetList();
private:
void ClearAll(void);
- MessageView *messageview{nullptr};
- bool viewiInitStatus{false};
-
- UIImageView *imageline{nullptr};
- UIImageView *imagemeage{nullptr};
- UILabelExt *labeltitle{nullptr};
- UILabelExt *labelmeage{nullptr};
+ UILabelExt *title{nullptr};
+ MessageListAdapter *p_MessageListAdapter{nullptr};
+ UIList *MessageList = nullptr;
+ UILabelButtonExt *DeleteButton = nullptr; // 删除按键
+ MessageModel *p_MessageModel{nullptr};
};
}
-#endif
+#endif
\ No newline at end of file
--- /dev/null
+/***
+ * @Date: 2024-06-19 16:39:31
+ * @LastEditors: Caisking 3449750381@qq.com
+ * @LastEditTime: 2024-06-19 17:30:37
+ * @FilePath: /XTS_FD230/FD230/code/sdk/application/wearable/fd230app/nativeui/message/src/MessageControlView.cpp
+ */
+/*
+ * Copyright (c) CompanyNameMagicTag 2022-2022. All rights reserved.
+ * Description: MessageControlView.h
+ * Author:
+ * Create: 2022-04-02
+ */
+
+#ifndef MESSAGE_CONTROL_VIEW_H
+#define MESSAGE_CONTROL_VIEW_H
+
+#include "components/root_view.h"
+#include "UiConfig.h"
+#include "components/ui_card_page.h"
+#include "message/include/MessageLackView.h"
+#include "message/include/MessageCardView.h"
+
+namespace OHOS
+{
+
+ class MessageControlView : public UICardPage
+ {
+ public:
+ MessageControlView();
+ ~MessageControlView() override;
+ bool InitView(void);
+ void PreLoad(void) override;
+ void UnLoad(void) override;
+ void SetLackView(bool flag);
+
+ private:
+ MessageLackView *messageLackView{nullptr};
+ MessageCardView *messageCardView{nullptr};
+ bool viewiInitStatus{false};
+ bool isLack{false};
+
+ void ClearAll(void);
+ };
+}
+#endif
--- /dev/null
+/***
+ * @Date: 2024-06-19 17:04:12
+ * @LastEditors: Caisking 3449750381@qq.com
+ * @LastEditTime: 2024-06-19 17:12:03
+ * @FilePath: /XTS_FD230/FD230/code/sdk/application/wearable/fd230app/nativeui/message/include/MessageLackViewView.h
+ */
+/*
+ * Copyright (c) CompanyNameMagicTag 2022-2022. All rights reserved.
+ * Description: MessageLackView.h
+ * Author:
+ * Create: 2022-04-02
+ */
+
+#ifndef MESSAGE_LACK_VIEW_H
+#define MESSAGE_LACK_VIEW_H
+
+#include "components/ui_label.h"
+#include "components/ui_label_ext.h"
+#include "View.h"
+#include "ohos_types.h"
+#include "AppGroupView.h"
+#include "components/ui_image_view.h"
+
+namespace OHOS
+{
+ class MessageLackView : public AppGroupView
+ {
+ public:
+ MessageLackView();
+ ~MessageLackView() override;
+
+ bool CreateUIViewGroup(void);
+ static MessageLackView *GetInstance(void);
+ bool InitView(void *caller) override;
+
+ private:
+ UIImageView *imageline{nullptr};
+ UIImageView *imagemeage{nullptr};
+ UILabelExt *labeltitle{nullptr};
+ UILabelExt *labelmeage{nullptr};
+
+ void ClearAll(void);
+ };
+}
+#endif
\ No newline at end of file
-
+/***
+ * @Date: 2024-04-15 10:55:58
+ * @LastEditors: Caisking 3449750381@qq.com
+ * @LastEditTime: 2024-06-19 17:38:19
+ * @FilePath: /XTS_FD230/FD230/code/sdk/application/wearable/fd230app/nativeui/message/include/MessageView.h
+ */
+/***
+ * @Date: 2024-04-15 10:55:58
+ * @LastEditors: Caisking 3449750381@qq.com
+ * @LastEditTime: 2024-06-19 10:54:53
+ * @FilePath: /XTS_FD230/FD230/code/sdk/application/wearable/fd230app/nativeui/message/include/MessageView.h
+ */
#ifndef Message_VIEW_H
#define Message_VIEW_H
void DeInitView(void);
void PreLoad(void);
+ bool InitPage();
+ bool SetupViewPage(MessageView *messageView);
+
private:
UIScrollView *container_ = nullptr;
UIView::OnDragListener *draglistener{nullptr};
bool viewInitStatus{false};
+
+ MessageModel *g_MessageModel;
};
} // namespace OHOS
#endif
\ No newline at end of file
-/***
- * @Date: 2024-04-15 10:55:58
- * @LastEditors: Caisking 3449750381@qq.com
- * @LastEditTime: 2024-04-16 09:37:52
- * @FilePath: /XTS_FD230/FD230/code/sdk/application/wearable/fd230app/nativeui/message/src/MessageCardView.cpp
+/*
+ * Copyright (c) CompanyNameMagicTag 2021-2021. All rights reserved.
+ * Description: MessageCardView.cpp
+ * Author:
+ * Create: 2021-12-21
*/
-
+#include <string>
+#include "common/image_cache_manager.h"
+#include "ui_resource_image.h"
#include "message/include/MessageCardView.h"
-#include "wearable_log.h"
-
+#include "message/include/MessagePresenter.h"
+#include "uicomponents/UIComponents.h"
namespace OHOS
{
- static constexpr char *lineimagePath = "/user/res/message/Line.bin";
- static constexpr char *messageimagePath = "/user/res/message/message.bin";
-
+ static MessageCardView *g_pMessageCardView = nullptr;
+ static const uint32_t BACK_GROUND_COLOR = 0xfff6f6f6;
+ 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;
+ static constexpr uint8_t NUM_2 = 2;
MessageCardView::MessageCardView()
{
- WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "MessageCardView::MessageCardView()");
SetPosition(0, 0, HORIZONTAL_RESOLUTION, VERTICAL_RESOLUTION);
+ g_pMessageCardView = this;
}
MessageCardView::~MessageCardView()
{
WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "MessageCardView::~MessageCardView()");
ClearAll();
+ g_pMessageCardView = nullptr;
}
void MessageCardView::ClearAll(void)
{
- if (viewiInitStatus == true)
+ RemoveAll();
+ if (title != nullptr)
{
- RemoveAll();
- if (messageview != nullptr)
- {
- delete messageview;
- messageview = nullptr;
- delete labeltitle;
- labeltitle = nullptr;
- delete labelmeage;
- labelmeage = nullptr;
- delete imageline;
- imageline = nullptr;
- delete imagemeage;
- imagemeage = nullptr;
- }
+ delete title;
+ title = nullptr;
}
- }
-
- bool MessageCardView::InitView(void)
- {
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, " ::InitView()");
-
-#if 0
- messageview = new MessageView();
- if (messageview == nullptr)
+ if (MessageList != nullptr)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "MessageView::new mainweatherView fail!");
- return false;
+ MessageList->RemoveAll();
+ delete MessageList;
+ MessageList = nullptr;
}
- if (messageview->InitPage() == false)
+ if (DeleteButton != nullptr)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "MessageView->InitPage() == false!");
- return false;
+ delete DeleteButton;
+ DeleteButton = nullptr;
}
- if (messageview->SetupViewPage(messageview) == false)
+ }
+ void MessageCardView::AddMessageToList(const MessageListItem &item)
+ {
+ p_MessageListAdapter->AddListItem(item);
+ }
+ // 初始化页面
+ bool MessageCardView::InitPage(void)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "InitPage is begin");
+ /*初始化label*/
+ InitLabelExt(title, 83, 50, 300, 35, "labletitle", STR_MESSAGE_NOTIFICATION, DEFAULT_VECTOR_FONT_FILENAME, 30);
+ Add(title);
+
+ // UIList 的适配器
+ p_MessageListAdapter = new MessageListAdapter();
+ // p_MessageListAdapter->SetItemClickListener(presenter_);
+ if (MessageList == nullptr)
{
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "MessageView->SetupViewPage() == false!");
- return false;
+ MessageList = new UIList();
}
- messageview->SetStyle(STYLE_BACKGROUND_OPA, OPA_TRANSPARENT);
- Add(messageview);
- messageview->GetList()->RefreshList(); // 刷新列表
- //messageview->GetList()->SetElastic(true);
+ MessageList->SetPosition(More_LIST_POSITION_X, More_LIST_POSITION_Y);
+ MessageList->Resize(HORIZONTAL_RESOLUTION, VERTICAL_RESOLUTION);
+ MessageList->SetScrollBlankSize(More_SCROLLBLANKSIZE);
+ MessageList->SetReboundSize(50);
+ MessageList->SetSelectPosition(HORIZONTAL_RESOLUTION / SNUM_2); // middle position
+ MessageList->SetDraggable(true);
+ MessageList->SetThrowDrag(true);
+ MessageList->EnableAutoAlign(true);
+ MessageList->SetElastic(true); // 设置回弹效果
+ MessageList->SetMaxScrollDistance(MAX_SCR_DIS);
+
+ // SetYScrollBarVisible(true); // 设置滑动滚动条
+ MessageList->SetOnClickListener(static_cast<UIView::OnClickListener *>(MessagePresenter::GetInstance()));
+ UIView::OnDragListener *Messagedraglistener = static_cast<UIView::OnDragListener *>(MessagePresenter::GetInstance());
+#if 0
+ /*删除按键*/
+ int top = (MessageModel::GetInstance().GetListNum() * 100);
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "num is %d", top);
+ InitButtonExt(DeleteButton, 43, top, 380, 100, DELETEALLDATA, STR_CLOSE, 30);
+ DeleteButton->SetOnClickListener(static_cast<UIView::OnClickListener *>(MessagePresenter::GetInstance()));
+ messageView->Add(DeleteButton);
#endif
- // Add ImageView to App
- if (imageline == nullptr)
- {
- imageline = new UIImageView();
- }
- imageline->SetPosition(193, 30); // widget's left position and top position
- imageline->Resize(100, 100); // widget's width and height
- imageline->SetViewId("image1"); // Set style
- imageline->SetSrc(lineimagePath);
-
- // Add to rootView
- Add(imageline);
- imageline->SetVisible(true);
-
- // Add Label to App
- if (labeltitle == nullptr)
- {
- labeltitle = new UILabelExt();
- }
- labeltitle->SetPosition(83, 50); // widget's left position and top position
- labeltitle->Resize(300, 35); // widget's width and height
- labeltitle->SetViewId("label1"); // Set style
- labeltitle->SetStyle(STYLE_TEXT_FONT, 30);
-
- // Set additional property
- labeltitle->SetText("通知");
- labeltitle->SetLineBreakMode(UILabel::LINE_BREAK_ELLIPSIS);
- labeltitle->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);
- labeltitle->SetRollSpeed(0);
- labeltitle->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30);
-
- // Add to rootView
- Add(labeltitle);
- labeltitle->SetVisible(true);
-
- // Add Label to App
- if (labelmeage == nullptr)
- {
- labelmeage = new UILabelExt();
- }
- labelmeage->SetPosition(53, 276); // widget's left position and top position
- labelmeage->Resize(360, 35); // widget's width and height
- labelmeage->SetViewId("label2"); // Set style
- labelmeage->SetStyle(STYLE_TEXT_FONT, 30);
-
- // Set additional property
- labelmeage->SetText("暂无内容");
- labelmeage->SetLineBreakMode(UILabel::LINE_BREAK_ELLIPSIS);
- labelmeage->SetTextColor(Color::GetColorFromRGBA(0x66, 0x66, 0x66, 0xff));
- labelmeage->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);
- labelmeage->SetRollSpeed(0);
- labelmeage->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30);
-
- // Add to rootView
- Add(labelmeage);
- labelmeage->SetVisible(true);
+ Add(MessageList);
+ MessageList->SetAdapter(p_MessageListAdapter);
+ MessageList->RefreshList();
+
+ SetDraggable(false);
+ SetTouchable(false);
+ initViewStatus = true;
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "InitPage is end");
+ return true;
+ }
- // Add ImageView to App
- if (imagemeage == nullptr)
+ // 初始化视图为可拖拽,可触摸
+ bool MessageCardView::InitView(void *caller)
+ {
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "MessageCardView InitView %p", caller);
+ if (InitPage() == false)
{
- imagemeage = new UIImageView();
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "InitPage fail");
+ return false;
}
- imagemeage->SetPosition(183, 156); // widget's left position and top position
- imagemeage->Resize(100, 100); // widget's width and height
- imagemeage->SetViewId("image2"); // Set style
- imagemeage->SetSrc(messageimagePath);
-
- // Add to rootView
- Add(imagemeage);
- imagemeage->SetVisible(true);
-
+ SetDraggable(true);
+ SetTouchable(true);
return true;
}
- void MessageCardView::PreLoad(void)
+ bool MessageCardView::GetInitViewState(void)
{
- if (!viewiInitStatus)
- {
- InitView();
- viewiInitStatus = true;
- }
+ return initViewStatus;
}
- void MessageCardView::UnLoad(void)
+ MessageCardView *MessageCardView::GetInstance(void)
+ {
+ return g_pMessageCardView;
+ }
+ void MessageCardView::SetUpView(MessageCardView *messageCardView)
{
+ /* 加载list */
+ p_MessageModel->InitMessageListItems();
+ const MessageListItem *itemInfo = p_MessageModel->GetMessageListItems();
+ for (int i = 0; i < p_MessageModel->GetMessageCount(); i++)
+ {
+ messageCardView->AddMessageToList(itemInfo[i]);
+ }
}
-}
\ No newline at end of file
+}
--- /dev/null
+/*
+ * Copyright (c) CompanyNameMagicTag 2022-2022. All rights reserved.
+ * Description: MessageControlView.cpp
+ * Author:
+ * Create: 2022-04-02
+ */
+#include "message/include/MessageControlView.h"
+#include "message/include/MessageModel.h"
+#include "wearable_log.h"
+
+namespace OHOS
+{
+ MessageControlView::MessageControlView()
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "MessageControlView::MessageControlView()");
+ SetPosition(0, 0, HORIZONTAL_RESOLUTION, VERTICAL_RESOLUTION);
+ }
+
+ MessageControlView::~MessageControlView()
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "MessageControlView::~MessageControlView()");
+ if (viewiInitStatus)
+ {
+ ClearAll();
+ }
+ }
+ void MessageControlView::ClearAll(void)
+ {
+ RemoveAll();
+ if (messageLackView != nullptr)
+ {
+ delete messageLackView;
+ messageLackView = nullptr;
+ }
+ if (messageCardView != nullptr)
+ {
+ delete messageCardView;
+ messageCardView = nullptr;
+ }
+ }
+
+ bool MessageControlView::InitView(void)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "MessageControlView InitView");
+ messageLackView = new MessageLackView();
+ if (messageLackView == nullptr)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "MessageLackView::new messageLackView fail");
+ return false;
+ }
+ if (messageLackView->CreateUIViewGroup() == false)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "CreateUIViewGroup fail");
+ return false;
+ }
+
+ messageCardView = new MessageCardView();
+ if (messageCardView == nullptr)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "MessageCardView::new messageCardView fail");
+ return false;
+ }
+ if (messageCardView->InitPage() == false)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "InitPage fail");
+ return false;
+ }
+ Add(messageCardView);
+ Add(messageLackView);
+ uint8_t status = MessageModel::GetInstance().HasDataJson();
+ if (status == 0)
+ {
+ messageCardView->SetVisible(false);
+ messageLackView->SetVisible(true);
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "messageLackView true");
+ }
+ else
+ {
+ messageCardView->SetVisible(true);
+ //messageCardView->SetUpView(messageCardView);
+ messageLackView->SetVisible(false);
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "messageCardView true");
+ }
+ return true;
+ }
+
+ void MessageControlView::SetLackView(bool flag)
+ {
+ if (flag)
+ {
+ messageLackView->SetVisible(true);
+ messageCardView->SetVisible(false);
+ }
+ else
+ {
+ messageLackView->SetVisible(false);
+ messageCardView->SetVisible(true);
+ }
+ }
+
+ void MessageControlView::PreLoad(void)
+ {
+ if (!viewiInitStatus)
+ {
+ InitView();
+ viewiInitStatus = true;
+ }
+ }
+
+ void MessageControlView::UnLoad(void)
+ {
+ // Message's usage scenes is complicated, so we do not release it's resources inner slice.
+ }
+}
--- /dev/null
+/***
+ * @Date: 2024-06-19 17:04:20
+ * @LastEditors: Caisking 3449750381@qq.com
+ * @LastEditTime: 2024-06-19 18:04:58
+ * @FilePath: /XTS_FD230/FD230/code/sdk/application/wearable/fd230app/nativeui/message/src/MessageLackView.cpp
+ */
+/*
+ * Copyright (c) CompanyNameMagicTag 2022-2022. All rights reserved.
+ * Description: MessageLackView.cpp
+ * Author:
+ * Create: 2022-04-02
+ */
+#include "UiConfig.h"
+#include "wearable_log.h"
+#include "message/include/MessageLackView.h"
+#include "message/include/MessageModel.h"
+#include "uicomponents/UIComponents.h"
+namespace OHOS
+{
+ static constexpr char *lineimagePath = "/user/res/message/Line.bin";
+ static constexpr char *messageimagePath = "/user/res/message/message.bin";
+ static MessageLackView *g_pMainView = nullptr;
+ MessageLackView::MessageLackView()
+ {
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "MessageLackView::MessageLackView");
+ SetPosition(0, 0, HORIZONTAL_RESOLUTION, VERTICAL_RESOLUTION);
+ g_pMainView = this;
+ }
+
+ MessageLackView::~MessageLackView()
+ {
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "MessageLackView::~MessageLackView");
+ ClearAll();
+ g_pMainView = nullptr;
+ }
+
+ void MessageLackView::ClearAll(void)
+ {
+ RemoveAll();
+ if (imageline != nullptr)
+ {
+ delete imageline;
+ imageline = nullptr;
+ }
+ if (imagemeage != nullptr)
+ {
+ delete imagemeage;
+ imagemeage = nullptr;
+ }
+ if (labeltitle != nullptr)
+ {
+ delete labeltitle;
+ labeltitle = nullptr;
+ }
+ if (labelmeage != nullptr)
+ {
+ delete labelmeage;
+ labelmeage = nullptr;
+ }
+ }
+
+ MessageLackView *MessageLackView::GetInstance(void)
+ {
+ return g_pMainView;
+ }
+
+ bool MessageLackView::CreateUIViewGroup(void)
+ {
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "MessageLackView::CreateUIViewGroup");
+
+ /*初始化label*/
+ InitLabelExt(labeltitle, 83, 50, 300, 35, "labletitle", STR_MESSAGE, DEFAULT_VECTOR_FONT_FILENAME, 30);
+ InitLabelExt(labelmeage, 53, 276, 360, 40, "labelMessage", STR_MESSAGENO, DEFAULT_VECTOR_FONT_FILENAME, 30);
+ labelmeage->SetTextColor(Color::GetColorFromRGBA(0x66, 0x66, 0x66, 0xff));
+ /*初始化image*/
+ InitImageView(imageline, 193, 30, 365, 35, "image", lineimagePath);
+ InitImageView(imagemeage, 183, 156, 100, 100, "image", messageimagePath);
+
+ Add(imageline);
+ Add(imagemeage);
+ Add(labeltitle);
+ Add(labelmeage);
+
+ SetDraggable(false);
+ SetTouchable(false);
+ initViewStatus = true;
+ return true;
+ }
+
+ bool MessageLackView::InitView(void *caller)
+ {
+ WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "MessageLackView InitView %p", caller);
+ bool ret = CreateUIViewGroup();
+ if (ret == false)
+ {
+ return false;
+ }
+ SetDraggable(true);
+ SetTouchable(true);
+ return true;
+ }
+
+}
{
// WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "InitMessageListItem");
- p_MessageModel->InitMessageListItem();
+ p_MessageModel->InitMessageListItems();
Presenter<MessageView>::OnStart();
}
{
return;
}
- if (p_MessageModel->GetJsonStatus())
+ if (p_MessageModel->GetPopupViewState())
{
- const MessageListItem *itemInfo = p_MessageModel->GetMessagelistItems();
- for (int i = 0; i < p_MessageModel->GetMessageListNum(); i++)
+ const MessageListItem *itemInfo = p_MessageModel->GetMessageListItems();
+ for (int i = 0; i < p_MessageModel->GetMessageCount(); i++)
{
view_->AddMessageToList(itemInfo[i]);
}
bool MessagePresenter::OnClick(UIView &view, const ClickEvent &event)
{
UNUSED(event);
- if (MessageModel::GetInstance().GetPopupView())
+ if (MessageModel::GetInstance().GetPopupViewState())
{
if (strcmp(view.GetViewId(), DELETEALLDATA) == 0)
{
int index = p_MessageItemView->GetMessageListIndex();
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "the index is %d", index);
// 读取json数据
- std::vector<MessageData> messageDataVector = MessageModel::GetInstance().LoadMessageJson();
+ std::vector<MessageData> messageDataVector = MessageModel::GetInstance().LoadMessageData();
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "the index is %d", index);
if (!messageDataVector.empty())
{
int arraynum = messageDataVector.size() - 1;
MessageData messageData = messageDataVector[arraynum - index]; // 显示是倒序 id同理
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "the index is %d", index);
- MessageModel::GetInstance().SetMessageData(&messageData);
+ MessageModel::GetInstance().SetCurrentMessageData(&messageData);
NativeAbility::GetInstance().ChangeSlice(VIEW_MESSAGE_SHOW);
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "the index is %d", index);
return true;
void MessageShowView::UpdateMessage()
{
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "UpdateMessage");
- MessageData *data = MessageModel::GetInstance().GetMessageData();
+ MessageData *data = MessageModel::GetInstance().GetCurrentMessageData();
if (data == nullptr)
{
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "UpdateMessage is error");
return;
}
- titleStr = data->labeltitle;
- timeStr = data->labeltime;
- messageStr = data->labeldetails;
+ titleStr = data->labelTitle;
+ timeStr = data->labelTime;
+ messageStr = data->labelDetails;
}
void MessageShowView::PreLoad(void)
{
static constexpr int16 MAX_SCR_DIS = 1000;
static constexpr int16 LIST_POS = 20;
static constexpr int16 SNUM_2 = 2;
-
static constexpr uint8_t NUM_2 = 2;
+
static MessageView *g_pMessageView{nullptr};
MessageView::MessageView()
{
+ // SetPosition(0, 0, HORIZONTAL_RESOLUTION, VERTICAL_RESOLUTION);
g_pMessageView = this;
}
container_->SetStyle(STYLE_BACKGROUND_OPA, 0);
}
// 展示界面
- if (MessageModel::GetInstance().GetJsonStatus())
+ if (MessageModel::GetInstance().GetJsonLoadStatus())
{
printf("存在数据!\r\n");
SetPopupViewStatus(PopupMessage::MessagePopup, true);
UIView *popupView = nullptr;
if (view == PopupMessage::LackPopup)
{
- MessageModel::GetInstance().SetPopupView(false); // 设置状态为无记录
+ MessageModel::GetInstance().SetPopupViewState(false); // 设置状态为无记录
popupView = lackView;
}
else if (view == PopupMessage::MessagePopup)
{
- MessageModel::GetInstance().SetPopupView(true); // 设置状态为有记录
+ MessageModel::GetInstance().SetPopupViewState(true); // 设置状态为有记录
popupView = messageView;
}
if (popupView == nullptr)
void MessageView::OnSetUpView()
{
View<MessagePresenter>::OnSetUpView();
- if (MessageModel::GetInstance().GetJsonStatus())
+ if (MessageModel::GetInstance().GetJsonLoadStatus())
{
messageView->Add(MessageList);
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "MessageList is add");
RootView::GetInstance()->RemoveAll();
return;
}
-#if 0
- /* -------------------------------------------------------------------------- */
+
+ /* -------------------------------------------------------------------------- */
// 初始化页面
bool MessageView::InitPage()
{
- // UIList 的适配器
- p_MessageListAdapter = new MessageListAdapter();
- p_MessageListAdapter->SetItemClickListener(presenter_);
- if (MessageList == nullptr)
- {
- MessageList = new UIList();
- }
- MessageList->SetPosition(0, 0);
- MessageList->Resize(HORIZONTAL_RESOLUTION, VERTICAL_RESOLUTION);
- MessageList->SetDraggable(true);
- MessageList->SetThrowDrag(true);
- MessageList->SetStyle(STYLE_BACKGROUND_OPA, OPA_TRANSPARENT);
- // MessageList->SetOpaScale(100);
-
- MessageList->SetScrollBlankSize(200);
- MessageList->SetReboundSize(50);
- MessageList->SetSelectPosition(HORIZONTAL_RESOLUTION / 2); // middle position
- MessageList->SetDirection(1);
- // MessageList->SetElastic(true);
- UIView::OnClickListener *list1Click = static_cast<UIView::OnClickListener *>(MessagePresenter::GetInstance());
- MessageList->SetOnClickListener(list1Click);
- UIView::OnDragListener *list1Drag = static_cast<UIView::OnDragListener *>(MessagePresenter::GetInstance());
- MessageList->SetOnDragListener(list1Drag);
- Add(MessageList);
- MessageList->SetAdapter(p_MessageListAdapter);
- MessageList->SetVisible(true);
return true;
}
bool MessageView::SetupViewPage(MessageView *messageView)
{
g_MessageModel = &MessageModel::GetInstance();
- g_MessageModel->InitMessageListItem();
- const MessageListItem *itemInfo = g_MessageModel->GetMessagelistItems();
- for (int i = 0; i < g_MessageModel->GetMessageListNum(); i++)
+ g_MessageModel->InitMessageListItems();
+ if (g_MessageModel->GetJsonLoadStatus())
{
- messageView->AddMessageToList(itemInfo[i]);
- // printf("Index: %d, Icon: %s, Label: %s, Label Button: , Has Second Menu: \n", itemInfo[i].index, itemInfo[i].icon, itemInfo[i].label);
+ const MessageListItem *itemInfo = g_MessageModel->GetMessageListItems();
+ for (int i = 0; i < g_MessageModel->GetMessageCount(); i++)
+ {
+ messageView->AddMessageToList(itemInfo[i]);
+ }
}
return true;
}
-#endif
+
}
\ No newline at end of file