mcu_hi3321_watch/tjd/ui/app/female_health/TjdUiFemaleHealthView.cpp
2025-05-26 20:15:20 +08:00

131 lines
3.9 KiB
C++

/*----------------------------------------------------------------------------
* Copyright (c) TJD Technologies Co., Ltd. 2024. All rights reserved.
*
* Description:
*
* Author: huangshuyi
*
* Create: 2024-8
*--------------------------------------------------------------------------*/
#include <string>
#include "View.h"
#include "components/root_view.h"
#include "graphic_service.h"
#include "ChangeSliceListener.h"
#include "TjdUiFemaleHealthPresenter.h"
#include "TjdUiFemaleHealthView.h"
#include "TjdUiMemManage.h"
#include "sys_config.h"
#include "ble_api.h"
extern void TjdUiMsgCenterFemaleNotifyTrigger(void);
using namespace OHOS;
namespace TJD {
#define ENABLE_PRINT_INFO 1
#if ENABLE_PRINT_INFO
#define static_print_info(...) sys_ui_log_i(__VA_ARGS__) //一般信息打印宏控制
#define static_print_warn(...) sys_ui_log_w(__VA_ARGS__) //警告信息打印一般常开
#define static_print_error(...) sys_ui_log_e(__VA_ARGS__) //错误信息打印一般常开
#define static_print_debug(...) sys_ui_log_d(__VA_ARGS__)
#else
#define static_print_info(...)
#define static_print_warn(...)
#define static_print_error(...)
#define static_print_debug(...)
#endif
static TjdUiFemaleHealthView *g_pFemaleHealthView = nullptr;
TjdUiFemaleHealthView::TjdUiFemaleHealthView()
{
g_pFemaleHealthView = this;
}
TjdUiFemaleHealthView::~TjdUiFemaleHealthView()
{
g_pFemaleHealthView = nullptr;
if (g_pFemaleHealthView) {
//printf("delete children container:%p\n", g_pMenuCellularView->GetContainer());
TjdUiMemManage::DeleteChildren(container_);
}
if (ConnectNoDataPage_) {
delete ConnectNoDataPage_;
ConnectNoDataPage_ = nullptr;
}
if (HaveDataPage_) {
delete HaveDataPage_;
HaveDataPage_ = nullptr;
}
if (WaitDataPage_) {
delete WaitDataPage_;
WaitDataPage_ = nullptr;
}
if (CalenderPage_) {
delete CalenderPage_;
CalenderPage_ = nullptr;
}
if (WaitFailPage_) {
delete WaitFailPage_;
WaitFailPage_ = nullptr;
}
}
TjdUiFemaleHealthView *TjdUiFemaleHealthView::GetInstance(void)
{
return g_pFemaleHealthView;
}
void TjdUiFemaleHealthView::OnStart()
{
static_print_debug("TjdUiFemaleHealthView::OnStart\n");
container_ = new UIViewGroup();
container_->SetPosition(0, 0, Screen::GetInstance().GetWidth(), Screen::GetInstance().GetHeight());
AddViewToRootContainer(container_);
ConnectNoDataPage_ = new TjdUiFemaleConnectNoDataPage();
ConnectNoDataPage_->PageInit();
HaveDataPage_ = new TjdUiFemaleHaveDataPage();
HaveDataPage_->PageInit();
WaitDataPage_ = new TjdUiFemaleWaitDataPage();
WaitDataPage_->PageInit();
WaitDataPage_->HideView();
CalenderPage_ = new TjdUiFemaleCalenderPage();
CalenderPage_->PageInit();
CalenderPage_->HideView();
WaitFailPage_ = new TjdUiFemaleWaitFailPage();
WaitFailPage_->PageInit();
WaitFailPage_->HideView();
// printf("TjdUiFemaleHealthView::OnStart:%d\n", tjd_get_ble_is_connect());
if (tjd_get_ble_is_connect() == false) {
// 连接失败跳二维码页面
HaveDataPage_->HideView();
ConnectNoDataPage_->ShowView();
// TjdUiMsgCenterFemaleNotifyTrigger();
//CalenderPage_->ShowView();
//WaitDataPage_->ShowView();
// TjdUiAppSettingView::SetQuick(SettingItemIndex::SETTING_COMMON_INDEX, QuickIndex::FAVORITE);
// GraphicService::GetInstance()->PostGraphicEvent(std::bind(&Ability::ChangeSlice, &NativeAbility::GetInstance(), TJD_APP_VIEW_SETTING, TransitionType::TRANSITION_INVALID, 0, nullptr));
} else {
if (1) {
// 无数据页面
ConnectNoDataPage_->ShowView();
HaveDataPage_->HideView();
} else {
// 有数据页面
HaveDataPage_->ShowView();
ConnectNoDataPage_->HideView();
}
}
}
void TjdUiFemaleHealthView::OnStop()
{
}
} // namespace OHOS