#辅助功能
${CMAKE_CURRENT_SOURCE_DIR}/nativeui/secondaryfunction/src/SecondaryFunctionPresenter.cpp
${CMAKE_CURRENT_SOURCE_DIR}/nativeui/secondaryfunction/src/SecondaryFunctionView.cpp
+ ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/secondaryfunction/src/SecondaryFunctionModel.cpp
${CMAKE_CURRENT_SOURCE_DIR}/nativeui/secondaryfunction/src/FastTrainingAttentionPresenter.cpp
${CMAKE_CURRENT_SOURCE_DIR}/nativeui/secondaryfunction/src/FastTrainingAttentionView.cpp
${CMAKE_CURRENT_SOURCE_DIR}/nativeui/secondaryfunction/src/FastTrainingPresenter.cpp
#include "AlarmPopUpPresenter.h"
#include "CallerLogModel.h"
#include "MainCallingPresenter.h"
-
+#include "secondaryfunction/include/SecondaryFunctionModel.h"
namespace OHOS {
static bool IsCallingNotify()
{
CallVolumeDipSwitchControl(0);
} else {
// 切换到用户配置的快捷卡片
+ if(SecondaryFunctionModel::GetInstance()->GetHeartRateOrBloodOxygenQuickAccessSwitch() == true)
+ {
+ NativeAbility::GetInstance().ChangeSlice(VIEW_BLOODOXY, TRANSITION_ZOOM);
+ }
+ else
+ {
+ //之后需要将VIEW_APPLIST改成心率的SliceID
+ NativeAbility::GetInstance().ChangeSlice(VIEW_APPLIST, TRANSITION_ZOOM);
+ }
}
}
}
UIScrollView *QuickAccessViewInit(void);\r
void ClearAll(void);\r
UIRadioButton * GetRadioButton(int i);\r
+ void HeartRateOrBloodOxygenQuickAccessRadioButtonSelectStateSet(int state);\r
private:\r
bool QuickAccessScrollViewInit(void);\r
bool QuickAccessLabelInit(void);\r
--- /dev/null
+#ifndef SECONDARY_FUNCTION_MODEL_H
+#define SECONDARY_FUNCTION_MODEL_H
+
+namespace OHOS
+{
+ class SecondaryFunctionModel
+ {
+ public:
+ static SecondaryFunctionModel *GetInstance(void);
+ void KeepHeartRateOrBloodOxygenQuickAccessRadioButtonSelectState(int state);
+ bool HeartRateOrBloodOxygenQuickAccessRadioButtonSelectStateInit(void);
+ bool GetHeartRateOrBloodOxygenQuickAccessSwitch(void);
+ private:
+ SecondaryFunctionModel() {}
+ ~SecondaryFunctionModel() {}
+ SecondaryFunctionModel(const SecondaryFunctionModel &);
+ SecondaryFunctionModel &operator=(const SecondaryFunctionModel &);
+
+ private:
+ int HeartRateOrBloodOxygenQuickAccessSwitch{0}; // 心率或血氧快速访问开关,默认快速访问血氧打开
+ };
+}
+
+#endif
void OnStop() override;\r
\r
static SecondaryFunctionPresenter *GetInstance();\r
-\r
+ void SetHeartRateOrBloodOxygenQuickAccessRadioButtonSelectState(int state);\r
private:\r
// 因为继承了OnClickListener,所以有OnClick属性,至于参数,原函数也这样直接继承;\r
bool OnClick(UIView &view, const ClickEvent &event) override;\r
#include "secondaryfunction/include/QuickAccessView.h"\r
#include "secondaryfunction/include/SecondaryFunctionPresenter.h"\r
+#include "secondaryfunction/include/SecondaryFunctionModel.h"\r
namespace OHOS\r
{\r
\r
QuickAccessLabel[i] = nullptr;\r
}\r
\r
+ if (QuickAccessRadioButton[0]->GetState() == UICheckBox::SELECTED)\r
+ {\r
+ SecondaryFunctionModel::GetInstance()->KeepHeartRateOrBloodOxygenQuickAccessRadioButtonSelectState(0);\r
+ }\r
+ else if (QuickAccessRadioButton[1]->GetState() == UICheckBox::SELECTED)\r
+ {\r
+ SecondaryFunctionModel::GetInstance()->KeepHeartRateOrBloodOxygenQuickAccessRadioButtonSelectState(1);\r
+ }\r
+\r
// 循环删除 UIImageView 和 UIRadioButton指针数组\r
for (int i = 0; i < 2; i++)\r
{\r
return QuickAccessRadioButton[i];\r
}\r
\r
+ void QuickAccessView::HeartRateOrBloodOxygenQuickAccessRadioButtonSelectStateSet(int state)\r
+ {\r
+ if (state == 0)\r
+ {\r
+ QuickAccessRadioButton[0]->SetState(UICheckBox::SELECTED);\r
+ }\r
+ else\r
+ {\r
+ QuickAccessRadioButton[1]->SetState(UICheckBox::SELECTED);\r
+ }\r
+ }\r
// 设置图片\r
UIImageView *QuickAccessView::SetUpImageView(ImageConfig &imageconfig)\r
{\r
return nullptr;\r
}\r
\r
+ if (!SecondaryFunctionModel::GetInstance()->HeartRateOrBloodOxygenQuickAccessRadioButtonSelectStateInit())\r
+ {\r
+ return nullptr;\r
+ }\r
+\r
initViewStatus = true;\r
return QuickAccessScrollView;\r
}\r
--- /dev/null
+#include "secondaryfunction/include/SecondaryFunctionModel.h"
+#include "secondaryfunction/include/SecondaryFunctionPresenter.h"
+
+#include "wearable_log.h"
+
+namespace OHOS
+{
+ SecondaryFunctionModel *SecondaryFunctionModel::GetInstance(void)
+ {
+ static SecondaryFunctionModel instacne;
+ return &instacne;
+ }
+
+ /// @brief 保存心率或血氧快速访问单选按钮选中状态
+ /// @param state 0 选中心率 1 选中血氧
+ void SecondaryFunctionModel::KeepHeartRateOrBloodOxygenQuickAccessRadioButtonSelectState(int state)
+ {
+ HeartRateOrBloodOxygenQuickAccessSwitch = state;
+ }
+
+ /// @brief 心率或血氧快速访问单选按钮选中状态初始化
+ bool SecondaryFunctionModel::HeartRateOrBloodOxygenQuickAccessRadioButtonSelectStateInit(void)
+ {
+ SecondaryFunctionPresenter *p_SecondaryFunctionPresenter = SecondaryFunctionPresenter::GetInstance();
+ if (p_SecondaryFunctionPresenter == nullptr)
+ {
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SecondaryFunctionPresenter GetInstance fail");
+ return false;
+ }
+ p_SecondaryFunctionPresenter->SetHeartRateOrBloodOxygenQuickAccessRadioButtonSelectState(HeartRateOrBloodOxygenQuickAccessSwitch);
+ return true;
+ }
+
+ /// @brief 获取快速访问开关
+ /// @param void
+ /// @return true 快速访问心率开关开启,反之血氧开关开启
+ bool SecondaryFunctionModel::GetHeartRateOrBloodOxygenQuickAccessSwitch(void)
+ {
+ if (HeartRateOrBloodOxygenQuickAccessSwitch == 0)
+ {
+ return true;
+ }
+ else
+ {
+ return false;
+ }
+ }
+}
#include "AppViewIDs.h"\r
#include "NativeAbility.h"\r
#include "secondaryfunction/include/SecondaryFunctionPresenter.h"\r
-\r
+#include "secondaryfunction/include/SecondaryFunctionModel.h"\r
namespace OHOS\r
{\r
\r
return g_pSecondaryFunctionPresenter;\r
}\r
\r
+ /// @brief 设置心率或血氧快速访问单选按钮选中状态\r
+ /// @param state\r
+ void SecondaryFunctionPresenter::SetHeartRateOrBloodOxygenQuickAccessRadioButtonSelectState(int state)\r
+ {\r
+ QuickAccessView *p_QuickAccessView = QuickAccessView::GetInstance();\r
+ if (p_QuickAccessView == nullptr)\r
+ {\r
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "p_QuickAccessView GetInstance fail");\r
+ return;\r
+ }\r
+ if (state != 0)\r
+ {\r
+ p_QuickAccessView->HeartRateOrBloodOxygenQuickAccessRadioButtonSelectStateSet(1);\r
+ SecondaryFunctionModel::GetInstance()->KeepHeartRateOrBloodOxygenQuickAccessRadioButtonSelectState(0);\r
+ }\r
+ else\r
+ {\r
+ p_QuickAccessView->HeartRateOrBloodOxygenQuickAccessRadioButtonSelectStateSet(0);\r
+ }\r
+ }\r
+\r
void SecondaryFunctionPresenter::OnStart()\r
{\r
\r