From 3402608beba522f6428858b6eb76a99b2b8992ba Mon Sep 17 00:00:00 2001 From: Caisking <3449750381@qq.com> Date: Mon, 30 Sep 2024 22:10:39 +0800 Subject: [PATCH] =?utf8?q?=E5=A2=9E=E5=8A=A0=E7=9C=81=E7=94=B5=E6=A8=A1?= =?utf8?q?=E5=BC=8F=E7=95=8C=E9=9D=A2=E7=9A=84=E7=BC=96=E7=A0=81=E5=99=A8?= =?utf8?q?=E6=95=88=E6=9E=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../saveele/include/SaveElePresenter.h | 51 ++-- .../nativeui/saveele/src/SaveElePresenter.cpp | 169 ++++++------- .../nativeui/saveele/src/SaveEleView.cpp | 228 +++++++++--------- 3 files changed, 207 insertions(+), 241 deletions(-) diff --git a/code/sdk/application/wearable/fd230app/nativeui/saveele/include/SaveElePresenter.h b/code/sdk/application/wearable/fd230app/nativeui/saveele/include/SaveElePresenter.h index 56a6e0610..f42bc49e2 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/saveele/include/SaveElePresenter.h +++ b/code/sdk/application/wearable/fd230app/nativeui/saveele/include/SaveElePresenter.h @@ -2,7 +2,8 @@ * @Date: 2024-04-15 10:55:58 * @LastEditors: Caisking 3449750381@qq.com * @LastEditTime: 2024-08-09 15:01:58 - * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/saveele/include/SaveElePresenter.h + * @FilePath: + * /FD230/code/sdk/application/wearable/fd230app/nativeui/saveele/include/SaveElePresenter.h */ #ifndef _SAVEELE_PRESENTER_H #define _SAVEELE_PRESENTER_H @@ -10,34 +11,34 @@ #include "Presenter.h" #include "SaveEleView.h" -namespace OHOS -{ - static constexpr const char *SAVEBUTTONOK = "buttonok"; - static constexpr const char *SAVEBUTTONNO = "buttonno"; +namespace OHOS { +static constexpr const char *SAVEBUTTONOK = "buttonok"; +static constexpr const char *SAVEBUTTONNO = "buttonno"; - class SaveEleView; - class SaveElePresenter : public Presenter, - public UIView::OnClickListener, - public UIView::OnDragListener, - public RootView::OnKeyActListener - { - public: - SaveElePresenter(); - virtual ~SaveElePresenter(); +class SaveEleView; +class SaveElePresenter : public Presenter, + public UIView::OnClickListener, + public UIView::OnDragListener, + public UIView::OnRotateListener, + public RootView::OnKeyActListener { +public: + SaveElePresenter(); + virtual ~SaveElePresenter(); - void OnStart() override; - void OnPause() override; - void OnResume() override; - void OnStop() override; + void OnStart() override; + void OnPause() override; + void OnResume() override; + void OnStop() override; - static SaveElePresenter *GetInstance(); + static SaveElePresenter *GetInstance(); - private: - // 因为继承了OnClickListener,所以有OnClick属性,至于参数,原函数也这样直接继承; - bool OnClick(UIView &view, const ClickEvent &event) override; - bool OnDrag(UIView &view, const DragEvent &event) override; - bool OnKeyAct(UIView &view, const KeyEvent &event) override; // 增加按键事件 - }; +private: + // 因为继承了OnClickListener,所以有OnClick属性,至于参数,原函数也这样直接继承; + bool OnClick(UIView &view, const ClickEvent &event) override; + bool OnDrag(UIView &view, const DragEvent &event) override; + bool OnKeyAct(UIView &view, const KeyEvent &event) override; // 增加按键事件 + bool OnRotateEnd(UIView &view, const RotateEvent &event); +}; } // namespace OHOS #endif // SLEEPDETAIL_PRESENTER_H \ No newline at end of file diff --git a/code/sdk/application/wearable/fd230app/nativeui/saveele/src/SaveElePresenter.cpp b/code/sdk/application/wearable/fd230app/nativeui/saveele/src/SaveElePresenter.cpp index 6c084ed83..74f22b45f 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/saveele/src/SaveElePresenter.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/saveele/src/SaveElePresenter.cpp @@ -1,110 +1,83 @@ -/*** - * @Date: 2024-08-16 09:26:06 - * @LastEditors: Caisking 3449750381@qq.com - * @LastEditTime: 2024-08-21 17:03:11 - * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/saveele/src/SaveElePresenter.cpp - */ -/*** - * @Date: 2024-05-30 15:59:37 - * @LastEditors: Caisking 3449750381@qq.com - * @LastEditTime: 2024-08-20 16:04:44 - * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/saveele/src/SaveElePresenter.cpp - */ + #include "AppViewIDs.h" -#include "components/ui_label_ext.h" -#include "ui_resource_string.h" -#include "NativeAbility.h" #include "KeyInputListener.h" -#include "custom_utils.h" +#include "NativeAbility.h" #include "common/key_code.h" +#include "components/ui_label_ext.h" +#include "custom_utils.h" +#include "ui_resource_string.h" -#include "saveele/include/SaveElePresenter.h" #include "gfx_utils/mem_check.h" -namespace OHOS -{ +#include "saveele/include/SaveElePresenter.h" +#include "vibrator_service.h" + +namespace OHOS { - // 当前Presenter属性实例化的内存指针 - static SaveElePresenter *g_pSaveElePresenter = nullptr; +// 当前Presenter属性实例化的内存指针 +static SaveElePresenter *g_pSaveElePresenter = nullptr; - SaveElePresenter::SaveElePresenter() - { +SaveElePresenter::SaveElePresenter() { #ifdef MEM_CHECK - MemCheck::GetInstance()->EnableLeakCheck(true); + MemCheck::GetInstance()->EnableLeakCheck(true); #endif - g_pSaveElePresenter = this; - } + g_pSaveElePresenter = this; +} - SaveElePresenter::~SaveElePresenter() - { +SaveElePresenter::~SaveElePresenter() { #ifdef MEM_CHECK - MemCheck::GetInstance()->EnableLeakCheck(false); + MemCheck::GetInstance()->EnableLeakCheck(false); #endif - g_pSaveElePresenter = nullptr; - } - - SaveElePresenter *SaveElePresenter::GetInstance() - { - - return g_pSaveElePresenter; - } - - void SaveElePresenter::OnStart() - { - - Presenter::OnStart(); - } - - void SaveElePresenter::OnPause(void) - { - - Presenter::OnPause(); - } - - void SaveElePresenter::OnResume(void) - { - - Presenter::OnResume(); - } - - void SaveElePresenter::OnStop(void) - { - - Presenter::OnStop(); - } - - bool SaveElePresenter::OnDrag(UIView &view, const DragEvent &event) - { - - if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT && - (event.GetDeltaX() > 20) && (event.GetDeltaX() > (2 * MATH_ABS(event.GetDeltaY())))) - { - NativeAbility::GetInstance().Back(); - } - UNUSED(view); - return true; - } - - bool SaveElePresenter::OnClick(UIView &view, const ClickEvent &event) - { - if (strcmp(view.GetViewId(), SAVEBUTTONNO) == 0) - { - NativeAbility::GetInstance().Back(); - } - if (strcmp(view.GetViewId(), SAVEBUTTONOK) == 0) - { - NativeAbility::GetInstance().ChangeSlice(VIEW_SAVEBAT); - } - return true; - } - bool SaveElePresenter::OnKeyAct(UIView &view, const KeyEvent &event) - { - unsigned short keyID = event.GetKeyId(); - unsigned short keyState = event.GetState(); - // 如果是power键,且是亮屏状态,按键释放就返回上一级 - if (keyID == static_cast(ZliteKeyCode::ZLITE_KEY_POWER) && keyState == 1 && uapi_get_screen_state() == 0) - { - NativeAbility::GetInstance().Back(); - } - return true; - } -} \ No newline at end of file + g_pSaveElePresenter = nullptr; +} + +SaveElePresenter *SaveElePresenter::GetInstance() { + + return g_pSaveElePresenter; +} + +void SaveElePresenter::OnStart() { Presenter::OnStart(); } + +void SaveElePresenter::OnPause(void) { Presenter::OnPause(); } + +void SaveElePresenter::OnResume(void) { Presenter::OnResume(); } + +void SaveElePresenter::OnStop(void) { Presenter::OnStop(); } + +bool SaveElePresenter::OnDrag(UIView &view, const DragEvent &event) { + + if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT && + (event.GetDeltaX() > 20) && + (event.GetDeltaX() > (2 * MATH_ABS(event.GetDeltaY())))) { + NativeAbility::GetInstance().Back(); + } + UNUSED(view); + return true; +} + +bool SaveElePresenter::OnClick(UIView &view, const ClickEvent &event) { + if (strcmp(view.GetViewId(), SAVEBUTTONNO) == 0) { + NativeAbility::GetInstance().Back(); + } + if (strcmp(view.GetViewId(), SAVEBUTTONOK) == 0) { + NativeAbility::GetInstance().ChangeSlice(VIEW_SAVEBAT); + } + return true; +} +bool SaveElePresenter::OnKeyAct(UIView &view, const KeyEvent &event) { + unsigned short keyID = event.GetKeyId(); + unsigned short keyState = event.GetState(); + // 如果是power键,且是亮屏状态,按键释放就返回上一级 + if (keyID == static_cast(ZliteKeyCode::ZLITE_KEY_POWER) && + keyState == 1 && uapi_get_screen_state() == 0) { + NativeAbility::GetInstance().Back(); + } + return true; +} + +bool SaveElePresenter::OnRotateEnd(UIView &view, const RotateEvent &event) { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, + "VolumeSliderEventListener::OnRotateEnd"); +// ui_api_vibrate_once_func(); + return true; +} +} // namespace OHOS \ No newline at end of file diff --git a/code/sdk/application/wearable/fd230app/nativeui/saveele/src/SaveEleView.cpp b/code/sdk/application/wearable/fd230app/nativeui/saveele/src/SaveEleView.cpp index 14bbc29b7..24a8a2c17 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/saveele/src/SaveEleView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/saveele/src/SaveEleView.cpp @@ -2,131 +2,123 @@ * @Date: 2024-04-15 10:55:58 * @LastEditors: Caisking 3449750381@qq.com * @LastEditTime: 2024-08-09 14:41:32 - * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/saveele/src/SaveEleView.cpp + * @FilePath: + * /FD230/code/sdk/application/wearable/fd230app/nativeui/saveele/src/SaveEleView.cpp */ #include "saveele/include/SaveEleView.h" #include "saveele/include/SaveElePresenter.h" -#include "common/image_cache_manager.h" #include "UiConfig.h" -#include "ui_resource_image.h" -#include +#include "common/image_cache_manager.h" #include "components/ui_button.h" -#include "uicomponents/UIComponents.h" -#include "ui_resource_string.h" #include "components/ui_scroll_view.h" +#include "ui_resource_image.h" +#include "ui_resource_string.h" +#include "uicomponents/UIComponents.h" +#include + +namespace OHOS { + +static SaveEleView *g_pSaveEleView{nullptr}; +static const uint32_t BACK_GROUND_COLOR = 0xfff6f6f6; + +static constexpr char *iconImgPath = "/user/res/Save_Ele/SaveEle.bin"; +static constexpr char *butnoImgPath = "/user/res/Save_Ele/Save_Error.bin"; +static constexpr char *butokImgPath = "/user/res/Save_Ele/Save_Right.bin"; + +SaveEleView::SaveEleView() { g_pSaveEleView = this; } + +SaveEleView::~SaveEleView() { + UIViewGroup *tmpGroup = dynamic_cast(container_); + UIViewGroup::RemoveAndDeleteAllRecursively(tmpGroup); + g_pSaveEleView = nullptr; +} + +SaveEleView *SaveEleView::GetInstance() { return g_pSaveEleView; } + +void SaveEleView::InitView() { + if (container_ == nullptr) { + container_ = new UIScrollView(); + container_->SetPosition(0, 0, 466, 466); + container_->SetStyle(STYLE_BACKGROUND_OPA, 0); + } + + /*初始化label*/ + InitRollLabel(labeltitle, 83, 50, 300, 35, "labletitle", STR_POWER_SAVE_MODE, + DEFAULT_VECTOR_FONT_FILENAME, 30); + InitLabelExt(labelnote, 53, 217, 360, 200, "labletitle", STR_SAVENOTE, + DEFAULT_VECTOR_FONT_FILENAME, 30); + InitLabelExt(labelkown, 53, 385, 360, 100, "labelrecord", STR_SAVEBACK, + DEFAULT_VECTOR_FONT_FILENAME, 30); + labelkown->SetTextColor(Color::Orange()); + + /*初始化图片*/ + InitImageView(iamgeicon, 188, 121, 80, 90, "saveicon", iconImgPath); + + /*初始化按键*/ + InitButton(buttonno, 110, 501, 100, 100, SAVEBUTTONNO); + buttonno->SetImageSrc(butnoImgPath, butnoImgPath); + buttonno->SetOnClickListener(presenter_); + + InitButton(buttonok, 255, 501, 100, 100, SAVEBUTTONOK); + buttonok->SetImageSrc(butokImgPath, butokImgPath); + buttonok->SetOnClickListener(presenter_); + + container_->Add(labeltitle); + container_->Add(labelnote); + container_->Add(labelkown); + container_->Add(iamgeicon); + container_->Add(buttonno); + container_->Add(buttonok); +} + +void SaveEleView::OnStart() { + + View::OnStart(); + + container_ = new UIScrollView(); + if (container_ == nullptr) { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "container_ new fail"); + return; + } + container_->SetScrollBlankSize(35); + container_->SetReboundSize(50); + container_->SetPosition(0, 0, Screen::GetInstance().GetWidth(), + Screen::GetInstance().GetHeight()); + + container_->SetOnDragListener(presenter_); + container_->SetOnRotateListener(presenter_); + container_->SetRotateFactor(2); + container_->RequestFocus(); + container_->SetTouchable(true); + container_->SetDraggable(true); + container_->SetStyle(STYLE_BACKGROUND_COLOR, BACK_GROUND_COLOR); + container_->SetStyle(STYLE_BACKGROUND_COLOR, Color::Black().full); + + InitView(); + SetContainerView(container_); + RootView::GetInstance()->SetOnKeyActListener(presenter_); +} + +void SaveEleView::OnSetUpView() { + View::OnSetUpView(); + Draw(); +} + +void SaveEleView::OnTearDownView() { + View::OnTearDownView(); + return; +} -namespace OHOS -{ - - static SaveEleView *g_pSaveEleView{nullptr}; - static const uint32_t BACK_GROUND_COLOR = 0xfff6f6f6; - - static constexpr char *iconImgPath = "/user/res/Save_Ele/SaveEle.bin"; - static constexpr char *butnoImgPath = "/user/res/Save_Ele/Save_Error.bin"; - static constexpr char *butokImgPath = "/user/res/Save_Ele/Save_Right.bin"; - - SaveEleView::SaveEleView() - { - g_pSaveEleView = this; - } - - SaveEleView::~SaveEleView() - { - UIViewGroup *tmpGroup = dynamic_cast(container_); - UIViewGroup::RemoveAndDeleteAllRecursively(tmpGroup); - g_pSaveEleView = nullptr; - } - - SaveEleView *SaveEleView::GetInstance() - { - return g_pSaveEleView; - } - - void SaveEleView::InitView() - { - if (container_ == nullptr) - { - container_ = new UIScrollView(); - container_->SetPosition(0, 0, 466, 466); - container_->SetStyle(STYLE_BACKGROUND_OPA, 0); - } - - /*初始化label*/ - InitLabelExt(labeltitle, 83, 50, 300, 35, "labletitle", STR_POWER_SAVE_MODE, DEFAULT_VECTOR_FONT_FILENAME, 30); - InitLabelExt(labelnote, 53, 217, 360, 200, "labletitle", STR_SAVENOTE, DEFAULT_VECTOR_FONT_FILENAME, 30); - InitLabelExt(labelkown, 53, 385, 360, 100, "labelrecord", STR_SAVEBACK, DEFAULT_VECTOR_FONT_FILENAME, 30); - labelkown->SetTextColor(Color::Orange()); - - /*初始化图片*/ - InitImageView(iamgeicon, 188, 121, 80, 90, "saveicon", iconImgPath); - - /*初始化按键*/ - InitButton(buttonno, 110, 501, 100, 100, SAVEBUTTONNO); - buttonno->SetImageSrc(butnoImgPath, butnoImgPath); - buttonno->SetOnClickListener(presenter_); - - InitButton(buttonok, 255, 501, 100, 100, SAVEBUTTONOK); - buttonok->SetImageSrc(butokImgPath, butokImgPath); - buttonok->SetOnClickListener(presenter_); - - container_->Add(labeltitle); - container_->Add(labelnote); - container_->Add(labelkown); - container_->Add(iamgeicon); - container_->Add(buttonno); - container_->Add(buttonok); - } - - void SaveEleView::OnStart() - { - - View::OnStart(); - - container_ = new UIScrollView(); - if (container_ == nullptr) - { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "container_ new fail"); - return; - } - container_->SetScrollBlankSize(35); - container_->SetReboundSize(50); - container_->SetPosition(0, 0, Screen::GetInstance().GetWidth(), Screen::GetInstance().GetHeight()); - - container_->SetOnDragListener(presenter_); - container_->SetTouchable(true); - container_->SetDraggable(true); - container_->SetStyle(STYLE_BACKGROUND_COLOR, BACK_GROUND_COLOR); - container_->SetStyle(STYLE_BACKGROUND_COLOR, Color::Black().full); - - InitView(); - SetContainerView(container_); - RootView::GetInstance()->SetOnKeyActListener(presenter_); - } - - void SaveEleView::OnSetUpView() - { - View::OnSetUpView(); - Draw(); - } - - void SaveEleView::OnTearDownView() - { - View::OnTearDownView(); - return; - } - - void SaveEleView::OnStop() - { - View::OnStop(); - if (container_ != nullptr) - { - container_->RemoveAll(); - delete container_; - container_ = nullptr; - } - RootView::GetInstance()->RemoveAll(); - return; - } +void SaveEleView::OnStop() { + View::OnStop(); + if (container_ != nullptr) { + container_->RemoveAll(); + delete container_; + container_ = nullptr; + } + RootView::GetInstance()->RemoveAll(); + return; } +} // namespace OHOS -- 2.17.1