From ddcf378d457d00a045be4084865d3bad6ef360bc Mon Sep 17 00:00:00 2001 From: Caisking <3449750381@qq.com> Date: Fri, 26 Jan 2024 17:53:30 +0800 Subject: [PATCH] =?utf8?q?=E4=BF=AE=E6=94=B9=E8=A1=80=E6=B0=A7=E9=83=A8?= =?utf8?q?=E5=88=86UI=EF=BC=8C=E4=BF=AE=E5=A4=8D=E4=B8=8A=E6=BB=91?= =?utf8?q?=E7=95=8C=E9=9D=A2bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../wearable/nativeapp/CMakeLists.txt | 12 +- .../nativelauncher/include/AppViewIDs.h | 63 +- .../nativelauncher/include/NativeLauncher.h | 7 +- .../nativelauncher/include/UiConfig.h | 117 ++- .../nativelauncher/src/NativeLauncher.cpp | 5 +- .../include/{BloodView.h => BloodCardView.h} | 31 +- .../nativeui/blood/include/BloodNoteView.h | 10 + .../nativeui/blood/include/BloodOxygenView.h | 10 + .../nativeui/blood/include/BloodPresenter.h | 0 .../nativeui/blood/include/BloodTestView.h | 0 .../nativeui/blood/include/BloodWarnView.h | 0 .../src/{BloodView.cpp => BloodCardView.cpp} | 40 +- .../nativeui/blood/src/BloodNoteView.cpp | 10 + .../nativeui/blood/src/BloodOxygenView.cpp | 0 .../nativeui/blood/src/BloodPresenter.cpp | 10 + .../nativeui/blood/src/BloodTestView.cpp | 10 + .../nativeui/blood/src/BloodWarnView.cpp | 10 + .../bloodoxygen/src/BloodBandoffView.cpp | 311 +++++--- .../bloodoxygen/src/BloodOxygenPresenter.cpp | 2 +- .../bloodoxygen/src/BloodOxygenView.cpp | 738 +++++++++--------- .../main/include/MainPresenterSample.h | 4 +- .../nativeui/main/include/MainViewSample.h | 4 +- .../nativeui/main/src/MainViewSample.cpp | 6 +- .../nativeui/message/src/MessageView.cpp | 1 - 24 files changed, 813 insertions(+), 588 deletions(-) rename code/sdk/application/wearable/nativeapp/nativeui/blood/include/{BloodView.h => BloodCardView.h} (61%) create mode 100644 code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodNoteView.h create mode 100644 code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodOxygenView.h create mode 100644 code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodPresenter.h create mode 100644 code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodTestView.h create mode 100644 code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodWarnView.h rename code/sdk/application/wearable/nativeapp/nativeui/blood/src/{BloodView.cpp => BloodCardView.cpp} (86%) create mode 100644 code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodNoteView.cpp create mode 100644 code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodOxygenView.cpp create mode 100644 code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodPresenter.cpp create mode 100644 code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodTestView.cpp create mode 100644 code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodWarnView.cpp diff --git a/code/sdk/application/wearable/nativeapp/CMakeLists.txt b/code/sdk/application/wearable/nativeapp/CMakeLists.txt index 55a1d84b5..8b1d58c7c 100755 --- a/code/sdk/application/wearable/nativeapp/CMakeLists.txt +++ b/code/sdk/application/wearable/nativeapp/CMakeLists.txt @@ -192,7 +192,7 @@ set(SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/settings/src/SettingItemView.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/key/src/KeyInputListener.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/blood/src/BloodView.cpp + ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/blood/src/BloodCardView.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/dial/src/Digital_clockView.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/dial/src/DialView.cpp @@ -211,7 +211,7 @@ set(SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/weather/src/WeatherControlView.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/weather/src/WeatherView.cpp - #系统 + ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/system/src/SystemPresenter.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/system/src/SystemView.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/system/src/SystemAboutTheWatchView.cpp @@ -220,7 +220,7 @@ set(SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/system/src/SystemFactoryResetPresenter.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/system/src/SystemFactoryResetView.cpp - #声音与震动 + ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/soundandvibration/src/SoundAndVibrationPresenter.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/soundandvibration/src/SoundAndVibrationView.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/soundandvibration/src/SystemVolumePresenter.cpp @@ -230,7 +230,7 @@ set(SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/soundandvibration/src/MediaVolumePresenter.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/soundandvibration/src/MediaVolumeView.cpp - #显示与亮度 + ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/displaybrightness/src/DisplayBrightnessModel.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/displaybrightness/src/DisplayBrightnessPresent.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/displaybrightness/src/DisplayBrightnessView.cpp @@ -239,7 +239,7 @@ set(SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/displaybrightness/src/ScreenDurationPresenter.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/displaybrightness/src/ScreenDurationView.cpp - #辅助功能 + ${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/FastTrainingAttentionPresenter.cpp @@ -249,7 +249,7 @@ set(SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/secondaryfunction/src/QuickAccessPresenter.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/secondaryfunction/src/QuickAccessView.cpp - #指南针 + ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/compass/src/CompassControlView.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/compass/src/CompassCalibrationView.cpp ${CMAKE_CURRENT_SOURCE_DIR}/nativeui/compass/src/CompassModel.cpp diff --git a/code/sdk/application/wearable/nativeapp/nativelauncher/include/AppViewIDs.h b/code/sdk/application/wearable/nativeapp/nativelauncher/include/AppViewIDs.h index 8ef146e42..d7901dc8a 100755 --- a/code/sdk/application/wearable/nativeapp/nativelauncher/include/AppViewIDs.h +++ b/code/sdk/application/wearable/nativeapp/nativelauncher/include/AppViewIDs.h @@ -27,39 +27,40 @@ typedef enum : uint16_t { VIEW_INVALID = 0, // 无效视图 /* ----------------------------- 每一个id对应一个slice ----------------------------- */ - VIEW_MAIN = 1, // 主界面 - VIEW_SETTING, // 设置 - VIEW_APPLIST, // App应用 - VIEW_MAIN_ALARM, // 闹钟 - VIEW_ALARM_POP_UP, // 闹铃界面 - VIEW_BLUETOOTH_EARPHONE, // 连接蓝牙耳机界面 - VIEW_CALLER_LOG, // 通话记录界面 - VIEW_INCOMING_CALL, // 来电界面 - VIEW_BLOODOXY, // 血氧饱和度界面 - VIEW_COMPASS, // 指南针界面 - VIEW_CONNECT_PHONE, // 连接手机界面 - VIEW_INDOORWALK, // 室内步行 - VIEW_SHUTDOWN_OR_REBOOT, // 关机或重启界面 - VIEW_DIAL, // 切换表盘 - VIEW_WEATHER, // 天气 - VIEW_WEATHER_REPORT, // 气象报告 - VIEW_FUTURE_WEATHER, // 未来天气 - VIEW_GET_WEATHER_DATA_ERROR, // 获取天气数据失败 - VIEW_SYSTEM, // 系统 - VIEW_SYSTEM_FACTORY_RESET, // 系统:恢复出厂设置 - VIEW_SOUND_VIBRATION, // 声音与震动 - VIEW_SYSTEM_VOLUME, // 系统音量 - VIEW_CALL_VOLUME, // 通话音量 - VIEW_MEDIA_VOLUME, // 媒体音量 - VIEW_DISPLAY_BRIGHTNESS, // 屏幕与亮度 - VIEW_BRIGHTNESS_CONTROL, // 亮度调节 - VIEW_SCREEN_DURATION, // 亮屏时长 - VIEW_SECONDARY_FUNCTION, // 辅助功能 - VIEW_QUICK_ACCESS, // 快速访问 - VIEW_FAST_TRAINING, // 快速训练 - VIEW_FAST_TRAINING_ATTENTION,// 快速训练项目选择超出提示 + VIEW_MAIN = 1, // 主界面 + VIEW_SETTING, // 设置 + VIEW_APPLIST, // App应用 + VIEW_MAIN_ALARM, // 闹钟 + VIEW_ALARM_POP_UP, // 闹铃界面 + VIEW_BLUETOOTH_EARPHONE, // 连接蓝牙耳机界面 + VIEW_CALLER_LOG, // 通话记录界面 + VIEW_INCOMING_CALL, // 来电界面 + VIEW_BLOODOXY, // 血氧饱和度界面 + VIEW_COMPASS, // 指南针界面 + VIEW_CONNECT_PHONE, // 连接手机界面 + VIEW_INDOORWALK, // 室内步行 + VIEW_SHUTDOWN_OR_REBOOT, // 关机或重启界面 + VIEW_WEATHER, // 天气 + VIEW_WEATHER_REPORT, // 气象报告 + VIEW_FUTURE_WEATHER, // 未来天气 + VIEW_GET_WEATHER_DATA_ERROR, // 获取天气数据失败 + VIEW_SYSTEM, // 系统 + VIEW_SYSTEM_FACTORY_RESET, // 系统:恢复出厂设置 + VIEW_SOUND_VIBRATION, // 声音与震动 + VIEW_SYSTEM_VOLUME, // 系统音量 + VIEW_CALL_VOLUME, // 通话音量 + VIEW_MEDIA_VOLUME, // 媒体音量 + VIEW_DISPLAY_BRIGHTNESS, // 屏幕与亮度 + VIEW_BRIGHTNESS_CONTROL, // 亮度调节 + VIEW_SCREEN_DURATION, // 亮屏时长 + VIEW_SECONDARY_FUNCTION, // 辅助功能 + VIEW_QUICK_ACCESS, // 快速访问 + VIEW_FAST_TRAINING, // 快速训练 + VIEW_FAST_TRAINING_ATTENTION, // 快速训练项目选择超出提示 /* ---------------------------------- 测试界面 ---------------------------------- */ + VIEW_DIAL, // 切换表盘 VIEW_MESSAGE, // 信息通知 + VIEW_BLOODO, // 血氧监测 /* -------------------------------------------------------------------------- */ VIEW_MAIN_TEMP, // 体温界面(暂时不用) VIEW_OFFLINEVOICE, // 语音助手界面(暂时不用) diff --git a/code/sdk/application/wearable/nativeapp/nativelauncher/include/NativeLauncher.h b/code/sdk/application/wearable/nativeapp/nativelauncher/include/NativeLauncher.h index 2b334b65e..078c63c62 100755 --- a/code/sdk/application/wearable/nativeapp/nativelauncher/include/NativeLauncher.h +++ b/code/sdk/application/wearable/nativeapp/nativelauncher/include/NativeLauncher.h @@ -1,4 +1,5 @@ + /*** * @Author: Caisking 3449750381@qq.com * @Date: 2023-12-13 19:33:14 @@ -42,7 +43,6 @@ namespace OHOS void InitIndoorWalkSlice(void); void InitRebootSlice(void); void InitUISampleSlice(void); - void InitDialSlice(void); /* ----------------------------------- 天气 ----------------------------------- */ void InitWeatherSlice(void); void InitWeatherReportSlice(void); @@ -61,9 +61,12 @@ namespace OHOS void InitUIDisplayBrightnessSlice(void); void InitBrightnessControlSlice(void); void InitScreenDurationSlice(void); + /* --------------------------------测试界面------------------------------------ */ + void InitDialSlice(void); + void InitBloodSlice(void); /* -------------------------------------------------------------------------- */ void InitSecondaryFunction(void); - void InitQuickAccessSlice(void); + void InitQuickAccessSlice(void); void InitFastTrainingSlice(void); void InitFastTrainingAttentionSlice(void); diff --git a/code/sdk/application/wearable/nativeapp/nativelauncher/include/UiConfig.h b/code/sdk/application/wearable/nativeapp/nativelauncher/include/UiConfig.h index 06c4d1bb6..77bfa4f10 100755 --- a/code/sdk/application/wearable/nativeapp/nativelauncher/include/UiConfig.h +++ b/code/sdk/application/wearable/nativeapp/nativelauncher/include/UiConfig.h @@ -95,31 +95,98 @@ namespace OHOS static constexpr const char *PNG_BLOOD_FLOW_IMAGE_28 = APP_RES_PATH "/BLOOD_FLOW_IMAGE_30.bin"; static constexpr const char *PNG_BLOOD_FLOW_IMAGE_29 = APP_RES_PATH "/BLOOD_FLOW_IMAGE_31.bin"; static constexpr const char *PNG_BLOOD_FLOW_IMAGE_30 = APP_RES_PATH "/BLOOD_FLOW_IMAGE_32.bin"; - /* -------------------------------- 血氧倒计时动画图片 ------------------------------- */ - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_0 = APP_RES_PATH "/COUNTDOWN_IMAGE_01.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_1 = APP_RES_PATH "/COUNTDOWN_IMAGE_02.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_2 = APP_RES_PATH "/COUNTDOWN_IMAGE_03.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_3 = APP_RES_PATH "/COUNTDOWN_IMAGE_04.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_4 = APP_RES_PATH "/COUNTDOWN_IMAGE_05.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_5 = APP_RES_PATH "/COUNTDOWN_IMAGE_06.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_6 = APP_RES_PATH "/COUNTDOWN_IMAGE_07.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_7 = APP_RES_PATH "/COUNTDOWN_IMAGE_08.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_8 = APP_RES_PATH "/COUNTDOWN_IMAGE_09.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_9 = APP_RES_PATH "/COUNTDOWN_IMAGE_10.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_10 = APP_RES_PATH "/COUNTDOWN_IMAGE_11.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_11 = APP_RES_PATH "/COUNTDOWN_IMAGE_12.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_12 = APP_RES_PATH "/COUNTDOWN_IMAGE_13.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_13 = APP_RES_PATH "/COUNTDOWN_IMAGE_14.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_14 = APP_RES_PATH "/COUNTDOWN_IMAGE_15.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_15 = APP_RES_PATH "/COUNTDOWN_IMAGE_16.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_16 = APP_RES_PATH "/COUNTDOWN_IMAGE_17.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_17 = APP_RES_PATH "/COUNTDOWN_IMAGE_18.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_18 = APP_RES_PATH "/COUNTDOWN_IMAGE_19.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_19 = APP_RES_PATH "/COUNTDOWN_IMAGE_20.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_20 = APP_RES_PATH "/COUNTDOWN_IMAGE_21.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_21 = APP_RES_PATH "/COUNTDOWN_IMAGE_22.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_22 = APP_RES_PATH "/COUNTDOWN_IMAGE_23.bin"; - static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_23 = APP_RES_PATH "/COUNTDOWN_IMAGE_24.bin"; + /* -------------------------------- 血氧动画 ------------------------------------------------- */ + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_0 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_01.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_1 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_02.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_2 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_03.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_3 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_04.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_4 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_05.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_5 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_06.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_6 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_07.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_7 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_08.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_8 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_09.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_9 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_10.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_10 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_11.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_11 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_12.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_12 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_13.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_13 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_14.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_14 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_15.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_15 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_16.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_16 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_17.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_17 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_18.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_18 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_19.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_19 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_20.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_20 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_21.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_21 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_22.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_22 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_23.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_23 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_24.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_24 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_25.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_25 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_26.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_26 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_27.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_27 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_28.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_28 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_29.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_29 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_30.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_30 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_31.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_31 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_32.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_32 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_33.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_33 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_34.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_34 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_35.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_35 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_36.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_36 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_37.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_37 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_38.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_38 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_39.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_39 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_40.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_40 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_41.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_41 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_42.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_42 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_43.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_43 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_44.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_44 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_45.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_45 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_46.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_46 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_47.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_47 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_48.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_48 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_49.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_49 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_50.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_50 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_51.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_51 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_52.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_52 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_53.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_53 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_54.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_54 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_55.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_55 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_56.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_56 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_57.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_57 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_58.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_58 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_59.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_59 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_60.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_60 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_61.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_61 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_62.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_62 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_63.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_63 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_64.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_64 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_65.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_65 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_66.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_66 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_67.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_67 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_68.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_68 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_69.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_69 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_70.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_70 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_71.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_71 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_72.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_72 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_73.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_73 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_74.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_74 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_75.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_75 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_76.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_76 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_77.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_77 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_78.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_78 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_79.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_79 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_80.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_80 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_81.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_81 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_82.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_82 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_83.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_83 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_84.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_84 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_85.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_85 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_86.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_86 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_87.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_87 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_88.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_88 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_89.bin"; + static constexpr const char *PNG_COUNTDOWN_TIME_IMAGE_89 = APP_RES_PATH "/Blood/SPO2H/BLOOD_IMAGE_90.bin"; + /* ---------------------------------- 闹钟图片 ---------------------------------- */ static constexpr const char *ALARM_ADD_BUTTON_PATH = APP_RES_PATH "/BLUE_ADD.bin"; static constexpr const char *ALARM_CLOCK_CLOSE_ADD_PATH = APP_RES_PATH "/CLOSE_RING_CLOCK.bin"; diff --git a/code/sdk/application/wearable/nativeapp/nativelauncher/src/NativeLauncher.cpp b/code/sdk/application/wearable/nativeapp/nativelauncher/src/NativeLauncher.cpp index b82253864..a35610113 100755 --- a/code/sdk/application/wearable/nativeapp/nativelauncher/src/NativeLauncher.cpp +++ b/code/sdk/application/wearable/nativeapp/nativelauncher/src/NativeLauncher.cpp @@ -59,6 +59,8 @@ #include "dial/include/DialPresenter.h" #include "dial/include/DialView.h" +#include "blood/include/BloodCardView.h" + #include "weather/include/MainWeatherPresenter.h" #include "weather/include/MainWeatherView.h" @@ -149,11 +151,12 @@ namespace OHOS {VIEW_SCREEN_DURATION, &NativeLauncher::InitScreenDurationSlice}, // 亮屏时长实例化地址 {VIEW_SECONDARY_FUNCTION, &NativeLauncher::InitSecondaryFunction}, - {VIEW_QUICK_ACCESS,&NativeLauncher::InitQuickAccessSlice}, //快速访问实例化地址 + {VIEW_QUICK_ACCESS, &NativeLauncher::InitQuickAccessSlice}, // 快速访问实例化地址 {VIEW_FAST_TRAINING, &NativeLauncher::InitFastTrainingSlice}, {VIEW_FAST_TRAINING_ATTENTION, &NativeLauncher::InitFastTrainingAttentionSlice}, {VIEW_MESSAGE, &NativeLauncher::InitMessageSlice}, + //{VIEW_BLOODOXY, &NativeLauncher::InitBloodSlice}, #if 0 {VIEW_MAIN_ACTIVITY, &NativeLauncher::InitActivitySlice}, diff --git a/code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodView.h b/code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodCardView.h similarity index 61% rename from code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodView.h rename to code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodCardView.h index 3a40c122a..c452bf1e9 100644 --- a/code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodView.h +++ b/code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodCardView.h @@ -1,15 +1,16 @@ -/*** +/*** * @Author: Caisking 3449750381@qq.com - * @Date: 2023-12-12 16:55:23 + * @Date: 2024-01-17 19:32:15 * @LastEditors: Caisking 3449750381@qq.com - * @LastEditTime: 2024-01-15 17:21:42 - * @FilePath: /1.FD230/FD230/code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodView.h - * @Description: + * @LastEditTime: 2024-01-26 15:33:26 + * @FilePath: /FD230/code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodCardView.h + * @Description: * @ - * @Copyright (c) 2024 by Caisking , All Rights Reserved. + * @Copyright (c) 2024 by Caisking , All Rights Reserved. */ -#ifndef _Blood_VIEW_H -#define _Blood_VIEW_H + +#ifndef _Blood_CARD_VIEW_H +#define _Blood_CARD_VIEW_H #include "BaseView.h" #include "View.h" @@ -30,13 +31,13 @@ namespace OHOS #define WARNING "button1" #define CHECK "button2" - class BloodView : public UICardPage + class BloodCardView : public UICardPage { public: - BloodView(); - virtual ~BloodView(); - static BloodView *GetInstance(void); + BloodCardView(); + virtual ~BloodCardView(); + static BloodCardView *GetInstance(void); bool InitView(); void DeInit(); @@ -50,12 +51,12 @@ namespace OHOS private: UIView::OnDragListener *draglistener{nullptr}; - BloodView(BloodView &&) = delete; - BloodView &operator=(BloodView &&) = delete; + BloodCardView(BloodCardView &&) = delete; + BloodCardView &operator=(BloodCardView &&) = delete; UIImageView *background = nullptr; UIButton *warnButton = nullptr; - UILabelButtonExt *monitorButton = nullptr; + UILabelButton *monitorButton = nullptr; UILabel *titleLabel = nullptr; UILabel *bloodLabel = nullptr; UILabel *timeLabel = nullptr; diff --git a/code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodNoteView.h b/code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodNoteView.h new file mode 100644 index 000000000..c54634d10 --- /dev/null +++ b/code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodNoteView.h @@ -0,0 +1,10 @@ +/*** + * @Author: Caisking 3449750381@qq.com + * @Date: 2024-01-26 10:36:06 + * @LastEditors: Caisking 3449750381@qq.com + * @LastEditTime: 2024-01-26 10:36:10 + * @FilePath: /FD230/code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodNoteView.h + * @Description: + * @ + * @Copyright (c) 2024 by Caisking , All Rights Reserved. + */ diff --git a/code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodOxygenView.h b/code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodOxygenView.h new file mode 100644 index 000000000..a8d5095d0 --- /dev/null +++ b/code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodOxygenView.h @@ -0,0 +1,10 @@ +/*** + * @Author: Caisking 3449750381@qq.com + * @Date: 2024-01-26 10:33:51 + * @LastEditors: Caisking 3449750381@qq.com + * @LastEditTime: 2024-01-26 10:33:55 + * @FilePath: /FD230/code/sdk/application/wearable/nativeapp/nativeui/blood/include/bloodoxygenView.h + * @Description: + * @ + * @Copyright (c) 2024 by Caisking , All Rights Reserved. + */ diff --git a/code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodPresenter.h b/code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodPresenter.h new file mode 100644 index 000000000..e69de29bb diff --git a/code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodTestView.h b/code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodTestView.h new file mode 100644 index 000000000..e69de29bb diff --git a/code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodWarnView.h b/code/sdk/application/wearable/nativeapp/nativeui/blood/include/BloodWarnView.h new file mode 100644 index 000000000..e69de29bb diff --git a/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodView.cpp b/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodCardView.cpp similarity index 86% rename from code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodView.cpp rename to code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodCardView.cpp index 34b69c663..cb0a6d48f 100644 --- a/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodView.cpp +++ b/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodCardView.cpp @@ -3,13 +3,13 @@ * @Date: 2023-12-12 16:55:23 * @LastEditors: Caisking 3449750381@qq.com * @LastEditTime: 2024-01-15 17:31:26 - * @FilePath: /1.FD230/FD230/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodView.cpp + * @FilePath: /1.FD230/FD230/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodCardView.cpp * @Description: * @ * @Copyright (c) 2024 by Caisking , All Rights Reserved. */ -#include "blood/include/BloodView.h" +#include "blood/include/BloodCardView.h" #include "common/image_cache_manager.h" #include "UiConfig.h" @@ -21,32 +21,32 @@ namespace OHOS { - static BloodView *g_pBloodView{nullptr}; + static BloodCardView *g_pBloodCardView{nullptr}; - BloodView::BloodView() + BloodCardView::BloodCardView() { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodView::BloodView"); + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodCardView::BloodCardView"); SetPosition(0, 0, HORIZONTAL_RESOLUTION, VERTICAL_RESOLUTION); - g_pBloodView = this; + g_pBloodCardView = this; } - BloodView::~BloodView() + BloodCardView::~BloodCardView() { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodView::~BloodView"); + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodCardView::~BloodCardView"); RemoveAll(); DeInit(); - g_pBloodView = nullptr; + g_pBloodCardView = nullptr; } - BloodView *BloodView::GetInstance() + BloodCardView *BloodCardView::GetInstance() { - return g_pBloodView; + return g_pBloodCardView; } /*** * @description: * @return 添加按键是否成功 */ - bool BloodView::AddButton() + bool BloodCardView::AddButton() { // Add Button to App if (warnButton == nullptr) @@ -74,7 +74,7 @@ namespace OHOS // Add LabelButtonExt to App if (monitorButton == nullptr) { - monitorButton = new UILabelButtonExt(); + monitorButton = new UILabelButton(); } monitorButton->SetPosition(118, 336); // widget's left position and top position monitorButton->Resize(230, 80); // widget's width and height @@ -95,7 +95,7 @@ namespace OHOS * @description: * @return 初始化标签是否成功 */ - bool BloodView::InitLable() + bool BloodCardView::InitLable() { // Add Label to App if (bloodLabel == nullptr) @@ -163,7 +163,7 @@ namespace OHOS * @description: * @return 初始化背景是否成功 */ - bool BloodView::Initbackground() + bool BloodCardView::Initbackground() { // Add ImageView to App if (background == nullptr) @@ -185,9 +185,9 @@ namespace OHOS * @description: * @return 是否初始化成功 */ - bool BloodView::InitView() + bool BloodCardView::InitView() { - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "bool BloodView::InitView()"); + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "bool BloodCardView::InitView()"); if (!Initbackground()) { WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Initbackground error!\n"); @@ -207,7 +207,7 @@ namespace OHOS * @description: * @return 删除组件 */ - void BloodView::DeInit() + void BloodCardView::DeInit() { RemoveAll(); if (background != nullptr) @@ -241,7 +241,7 @@ namespace OHOS titleLabel = nullptr; } } - void BloodView::PreLoad(void) + void BloodCardView::PreLoad(void) { if (!viewiInitStatus) { @@ -250,7 +250,7 @@ namespace OHOS } } - void BloodView::UnLoad(void) + void BloodCardView::UnLoad(void) { } diff --git a/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodNoteView.cpp b/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodNoteView.cpp new file mode 100644 index 000000000..ecd217a2f --- /dev/null +++ b/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodNoteView.cpp @@ -0,0 +1,10 @@ +/*** + * @Author: Caisking 3449750381@qq.com + * @Date: 2024-01-26 10:35:53 + * @LastEditors: Caisking 3449750381@qq.com + * @LastEditTime: 2024-01-26 10:35:57 + * @FilePath: /FD230/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodNoteView.cpp + * @Description: + * @ + * @Copyright (c) 2024 by Caisking , All Rights Reserved. + */ diff --git a/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodOxygenView.cpp b/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodOxygenView.cpp new file mode 100644 index 000000000..e69de29bb diff --git a/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodPresenter.cpp b/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodPresenter.cpp new file mode 100644 index 000000000..be391576a --- /dev/null +++ b/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodPresenter.cpp @@ -0,0 +1,10 @@ +/*** + * @Author: Caisking 3449750381@qq.com + * @Date: 2024-01-26 10:34:49 + * @LastEditors: Caisking 3449750381@qq.com + * @LastEditTime: 2024-01-26 10:34:52 + * @FilePath: /FD230/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodoxygenPresenter.cpp + * @Description: + * @ + * @Copyright (c) 2024 by Caisking , All Rights Reserved. + */ diff --git a/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodTestView.cpp b/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodTestView.cpp new file mode 100644 index 000000000..979cf2763 --- /dev/null +++ b/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodTestView.cpp @@ -0,0 +1,10 @@ +/*** + * @Author: Caisking 3449750381@qq.com + * @Date: 2024-01-26 11:06:24 + * @LastEditors: Caisking 3449750381@qq.com + * @LastEditTime: 2024-01-26 11:06:27 + * @FilePath: /FD230/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodTestView.cpp + * @Description: + * @ + * @Copyright (c) 2024 by Caisking , All Rights Reserved. + */ diff --git a/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodWarnView.cpp b/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodWarnView.cpp new file mode 100644 index 000000000..dace7812c --- /dev/null +++ b/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodWarnView.cpp @@ -0,0 +1,10 @@ +/*** + * @Author: Caisking 3449750381@qq.com + * @Date: 2024-01-26 10:37:57 + * @LastEditors: Caisking 3449750381@qq.com + * @LastEditTime: 2024-01-26 10:38:00 + * @FilePath: /FD230/code/sdk/application/wearable/nativeapp/nativeui/blood/src/BloodWarnView.cpp + * @Description: + * @ + * @Copyright (c) 2024 by Caisking , All Rights Reserved. + */ diff --git a/code/sdk/application/wearable/nativeapp/nativeui/bloodoxygen/src/BloodBandoffView.cpp b/code/sdk/application/wearable/nativeapp/nativeui/bloodoxygen/src/BloodBandoffView.cpp index f24fbd2ac..260001582 100755 --- a/code/sdk/application/wearable/nativeapp/nativeui/bloodoxygen/src/BloodBandoffView.cpp +++ b/code/sdk/application/wearable/nativeapp/nativeui/bloodoxygen/src/BloodBandoffView.cpp @@ -9,138 +9,209 @@ #include "BloodBandoffView.h" #include "BloodOxygenModel.h" -namespace OHOS { -// 动态显示图片设置 -static constexpr uint16_t IMAGE_SIZE = 96; -static constexpr uint16_t IMAGE_POSITION_Y = 276; -static constexpr uint16_t IMAGE_POSITION_X = 179; -static constexpr uint16_t IMAGEANIMATOERVIEW_SIZE = 24; -static constexpr uint16_t IMAGEANIMATOERVIEW_SPEED = 40; - -// 标签设置 -static constexpr uint16_t LABEL_POSITION_X = 87; -static constexpr uint16_t LABEL_POSITION_Y = 200; -static constexpr uint16_t LABEL_POSITION_WIDTH = 288; -static constexpr uint16_t LABEL_POSITION_HEIGHT = 50; - -// 图片设置 -static constexpr uint16_t IMAGE_ENTER_POSITION_X = 131; -static constexpr uint16_t IMAGE_ENTER_POSITION_Y = 70; - -static constexpr uint16_t TITLE_LABEL_DEFAULT_HEIGHT = 30; -static constexpr uint16_t FONT_DEFAULT_SIZE = 25; -static constexpr uint16_t VIEW_DISTANCE_TO_LEFT_SIDE = 48; -static constexpr uint16_t TEXT_DISTANCE_TO_LEFT_SIDE = 50; -static constexpr uint16_t TEXT_DISTANCE_TO_TOP_SIDE = 11; - -static ImageAnimatorInfo g_imageAnimatorInfo_Time[IMAGEANIMATOERVIEW_SIZE] = { - {PNG_COUNTDOWN_TIME_IMAGE_0, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_1, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_2, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_3, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_4, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_5, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_6, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_7, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_8, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_9, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_10, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_11, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_12, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_13, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_14, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_15, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_16, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_17, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_18, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_19, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_20, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_21, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_22, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_COUNTDOWN_TIME_IMAGE_23, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, -}; -static BloodBandoffView *g_pMainView = nullptr; -BloodBandoffView::BloodBandoffView() +namespace OHOS { - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodBandoffView::BloodBandoffView"); - label = nullptr; - imageView = nullptr; - group = nullptr; - imageAnimator = nullptr; - g_pMainView = this; -} + // 动态显示图片设置 + static constexpr uint16_t IMAGE_SIZE = 180; + static constexpr uint16_t IMAGE_POSITION_Y = 134; + static constexpr uint16_t IMAGE_POSITION_X = 150; + static constexpr uint16_t IMAGEANIMATOERVIEW_SIZE = 90; + static constexpr uint16_t IMAGEANIMATOERVIEW_SPEED = 40; -BloodBandoffView::~BloodBandoffView() -{ - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodBandoffView::~BloodBandoffView"); - group->RemoveAll(); - delete label; - delete imageView; - delete group; - delete imageAnimator; - label = nullptr; - imageView = nullptr; - group = nullptr; - imageAnimator = nullptr; - g_pMainView = nullptr; -} + // 标签设置 + static constexpr uint16_t LABEL_POSITION_X = 87; + static constexpr uint16_t LABEL_POSITION_Y = 200; + static constexpr uint16_t LABEL_POSITION_WIDTH = 288; + static constexpr uint16_t LABEL_POSITION_HEIGHT = 50; -BloodBandoffView *BloodBandoffView::GetInstance(void) -{ - return g_pMainView; -} + // 图片设置 + static constexpr uint16_t IMAGE_ENTER_POSITION_X = 131; + static constexpr uint16_t IMAGE_ENTER_POSITION_Y = 70; -UIViewGroup *BloodBandoffView::GetBandoffViewGroup() -{ - return group; -} + static constexpr uint16_t TITLE_LABEL_DEFAULT_HEIGHT = 30; + static constexpr uint16_t FONT_DEFAULT_SIZE = 25; + static constexpr uint16_t VIEW_DISTANCE_TO_LEFT_SIDE = 48; + static constexpr uint16_t TEXT_DISTANCE_TO_LEFT_SIDE = 50; + static constexpr uint16_t TEXT_DISTANCE_TO_TOP_SIDE = 11; -UIImageAnimatorView *BloodBandoffView::GetImageAnimator() -{ - return imageAnimator; -} + static ImageAnimatorInfo g_imageAnimatorInfo_Time[IMAGEANIMATOERVIEW_SIZE] = { + {PNG_COUNTDOWN_TIME_IMAGE_0, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_1, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_2, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_3, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_4, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_5, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_6, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_7, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_8, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_9, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_10, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_11, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_12, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_13, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_14, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_15, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_16, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_17, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_18, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_19, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_20, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_21, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_22, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_23, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_24, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_25, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_26, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_27, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_28, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_29, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_30, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_31, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_32, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_33, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_34, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_35, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_36, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_37, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_38, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_39, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_40, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_41, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_42, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_43, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_44, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_45, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_46, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_47, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_48, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_49, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_50, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_51, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_52, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_53, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_54, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_55, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_56, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_57, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_58, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_59, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_60, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_61, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_62, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_63, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_64, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_65, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_66, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_67, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_68, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_69, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_70, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_71, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_72, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_73, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_74, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_75, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_76, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_77, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_78, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_79, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_80, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_81, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_82, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_83, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_84, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_85, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_86, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_87, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_88, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_COUNTDOWN_TIME_IMAGE_89, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + }; + static BloodBandoffView *g_pMainView = nullptr; + BloodBandoffView::BloodBandoffView() + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodBandoffView::BloodBandoffView"); + label = nullptr; + imageView = nullptr; + group = nullptr; + imageAnimator = nullptr; + g_pMainView = this; + } -UIViewGroup *BloodBandoffView::CreateUIViewGroup() -{ - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodBandoffView::CreateUIViewGroup"); - group = new UIViewGroup(); - if (group == nullptr) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodBandoffView::new group fail"); - return nullptr; + BloodBandoffView::~BloodBandoffView() + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodBandoffView::~BloodBandoffView"); + group->RemoveAll(); + delete label; + delete imageView; + delete group; + delete imageAnimator; + label = nullptr; + imageView = nullptr; + group = nullptr; + imageAnimator = nullptr; + g_pMainView = nullptr; } - group->SetPosition(0, 0); - group->Resize(VERTICAL_RESOLUTION, HORIZONTAL_RESOLUTION); - label = new UILabel(); - if (label == nullptr) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodBandoffView::new Label fail"); - return nullptr; + BloodBandoffView *BloodBandoffView::GetInstance(void) + { + return g_pMainView; } - group->Add(label); - label->SetPosition(LABEL_POSITION_X, LABEL_POSITION_Y, LABEL_POSITION_WIDTH, LABEL_POSITION_HEIGHT); - label->SetText("偏紧佩戴,保持静止"); - label->SetFont(DEFAULT_VECTOR_FONT_FILENAME, FONT_DEFAULT_SIZE); - label->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER); - imageAnimator = new UIImageAnimatorView(); - if (imageAnimator == nullptr) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodBandoffView::new UIImageAnimatorView fail"); - return nullptr; + UIViewGroup *BloodBandoffView::GetBandoffViewGroup() + { + return group; } - imageAnimator->SetImageAnimatorSrc(g_imageAnimatorInfo_Time, IMAGEANIMATOERVIEW_SIZE, IMAGEANIMATOERVIEW_SPEED); - imageAnimator->Start(); - imageAnimator->SetRepeat(false); - group->Add(imageAnimator); - imageView = new UIImageView(); - if (imageView == nullptr) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodBandoffView::new UIImageView fail"); - return nullptr; + UIImageAnimatorView *BloodBandoffView::GetImageAnimator() + { + return imageAnimator; } - imageView->SetPosition(IMAGE_ENTER_POSITION_X, IMAGE_ENTER_POSITION_Y); // 30 : offset - imageView->SetSrc(PNG_BLOOD_ICON_ENTER); - group->Add(imageView); - return group; -} + UIViewGroup *BloodBandoffView::CreateUIViewGroup() + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodBandoffView::CreateUIViewGroup"); + group = new UIViewGroup(); + if (group == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodBandoffView::new group fail"); + return nullptr; + } + group->SetPosition(0, 0); + group->Resize(VERTICAL_RESOLUTION, HORIZONTAL_RESOLUTION); + + label = new UILabel(); + if (label == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodBandoffView::new Label fail"); + return nullptr; + } + group->Add(label); + label->SetPosition(LABEL_POSITION_X, LABEL_POSITION_Y, LABEL_POSITION_WIDTH, LABEL_POSITION_HEIGHT); + label->SetText("偏紧佩戴,保持静止"); + label->SetFont(DEFAULT_VECTOR_FONT_FILENAME, FONT_DEFAULT_SIZE); + label->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER); + + imageAnimator = new UIImageAnimatorView(); + if (imageAnimator == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodBandoffView::new UIImageAnimatorView fail"); + return nullptr; + } + imageAnimator->SetImageAnimatorSrc(g_imageAnimatorInfo_Time, IMAGEANIMATOERVIEW_SIZE, IMAGEANIMATOERVIEW_SPEED); + imageAnimator->Start(); + imageAnimator->SetRepeat(true); + group->Add(imageAnimator); + + imageView = new UIImageView(); + if (imageView == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodBandoffView::new UIImageView fail"); + return nullptr; + } + imageView->SetPosition(IMAGE_ENTER_POSITION_X, IMAGE_ENTER_POSITION_Y); // 30 : offset + imageView->SetSrc(PNG_BLOOD_ICON_ENTER); + group->Add(imageView); + + return group; + } } diff --git a/code/sdk/application/wearable/nativeapp/nativeui/bloodoxygen/src/BloodOxygenPresenter.cpp b/code/sdk/application/wearable/nativeapp/nativeui/bloodoxygen/src/BloodOxygenPresenter.cpp index 676165c60..ca35307ab 100755 --- a/code/sdk/application/wearable/nativeapp/nativeui/bloodoxygen/src/BloodOxygenPresenter.cpp +++ b/code/sdk/application/wearable/nativeapp/nativeui/bloodoxygen/src/BloodOxygenPresenter.cpp @@ -89,7 +89,7 @@ bool BloodOxygenPresenter::OnClick(UIView& view, const ClickEvent& event) BloodOxygenView::GetInstance()->GetBloodOxygenGroup()->SetVisible(false); BloodBandoffView::GetInstance()->GetBandoffViewGroup()->SetVisible(true); BloodBandoffView::GetInstance()->GetImageAnimator()->Stop(); - BloodBandoffView::GetInstance()->GetImageAnimator()->SetRepeat(false); + BloodBandoffView::GetInstance()->GetImageAnimator()->SetRepeat(true); BloodBandoffView::GetInstance()->GetImageAnimator()->Start(); BloodOxygenModel::GetInstance()->SetBloodBandoffViewStatus(true); BloodOxygenView::GetInstance()->GetTestButton()->SetTouchable(false); diff --git a/code/sdk/application/wearable/nativeapp/nativeui/bloodoxygen/src/BloodOxygenView.cpp b/code/sdk/application/wearable/nativeapp/nativeui/bloodoxygen/src/BloodOxygenView.cpp index c088ef0e8..064601917 100755 --- a/code/sdk/application/wearable/nativeapp/nativeui/bloodoxygen/src/BloodOxygenView.cpp +++ b/code/sdk/application/wearable/nativeapp/nativeui/bloodoxygen/src/BloodOxygenView.cpp @@ -8,392 +8,410 @@ #include "BloodOxygenView.h" #include "BloodOxygenModel.h" -namespace OHOS { -// 按钮设置 -static constexpr uint16_t TESTBUTTON_ZERO = 0; -static constexpr uint16_t TESTBUTTON_X = 167; -static constexpr uint16_t TESTBUTTON_Y = 360; - -// 进度条参数设置 -static constexpr uint16_t CIRCLE_PROGRESS_VALUE = 100; -static constexpr uint16_t CIRCLE_PROGRESS_RADIUS = 43; -static constexpr uint16_t CIRCLE_PROGRESS_STARTANGLE = 360; -static constexpr uint16_t CIRCLE_PROGRESS_ENDANGLE = 0; -static constexpr uint16_t CIRCLE_PROGRESS_WIDTH = 10; -static constexpr uint16_t CIRCLE_PROGRESS_POSITION_X = 10; -static constexpr uint16_t CIRCLE_PROGRESS_POSITION_Y = 10; -static constexpr uint16_t CIRCLE_PROGRESS_CENTER_X = 195; -static constexpr uint16_t CIRCLE_PROGRESS_CENTER_Y = 37; -static constexpr uint16_t CIRCLE_PROGRESS_POSITION_WIDTH = 275; -static constexpr uint16_t CIRCLE_PROGRESS_POSITION_HEIGHT = 130; -static constexpr uint16_t CIRCLE_PROGRESS_LEFT = 10; -static constexpr uint16_t CIRCLE_PROGRESS_TOP = 5; - -// 动态刷新设置 -static constexpr uint16_t IMAGE_SIZE = 60; -static constexpr uint16_t IMAGE_POSITION_X = 186; -static constexpr uint16_t IMAGE_POSITION_Y = 23; -static constexpr uint16_t IMAGEANIMATORVIEW_SIZE = 31; -static constexpr uint16_t IMAGEANIMATORVIEW_SPEED = 40; - -// 血氧主图设置 -static constexpr uint16_t IMAGE_PROGRESS_POSITION_X = 176; -static constexpr uint16_t IMAGE_PROGRESS_POSITION_Y = 13; - -// 血氧%显示 -static constexpr uint16_t LABEL_PERCENT_POSITION_X = 258; -static constexpr uint16_t LABEL_PERCENT_POSITION_Y = 40; - -// 血氧柱状图 -static constexpr int16 VIEW_MAX_X = 415; -static constexpr int16 VIEW_MIN_X = 35; -static constexpr int16 VIEW_MAX_Y = 150; -static constexpr int16 VIEW_MIN_Y = 0; -static constexpr int16 VIEW_WIDTH = 7; -static constexpr int16 VIEW_HEIGHT = 300; -static constexpr uint16_t VIEW_BACKGROUND_OPA = 127; -static constexpr uint16_t VIEW_BORDER_RADIUS = 5; -static constexpr uint16_t BORDER_OPA = 127; -static constexpr uint16_t BORDER_WIDTH = 20; - -static constexpr uint16_t TITLE_LABEL_DEFAULT_HEIGHT = 30; -static constexpr uint16_t FONT_DEFAULT_SIZE = 20; -static constexpr uint16_t VIEW_DISTANCE_TO_LEFT_SIDE = 48; -static constexpr uint16_t TEXT_DISTANCE_TO_LEFT_SIDE = 50; -static constexpr uint16_t TEXT_DISTANCE_TO_TOP_SIDE = 11; -static constexpr uint16_t BUTTON_LABEL_SIZE = 40; -static constexpr uint8_t BUTTON_STYLE_BORDER_RADIUS_VALUE = 20; -static constexpr uint32 BUTTON_STYLE_BACKGROUND_COLOR_VALUE = 0xFFFFFF; -static constexpr uint16_t BUTTON_WIDHT2 = 120; -static constexpr uint16_t BUTTON_HEIGHT2 = 60; - -// 字体大小 -static constexpr uint16_t PERCENT_FONT_SIZE = 25; - -static constexpr uint16_t MATH_ZERO = 0; - -static BloodOxygenView *g_pMainView = nullptr; -static ImageAnimatorInfo g_imageAnimatorInfo_new[31] = { - {PNG_BLOOD_FLOW_IMAGE_0, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_1, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_2, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_3, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_4, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_5, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_6, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_7, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_8, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_9, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_10, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_11, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_12, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_13, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_14, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_15, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_16, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_17, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_18, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_19, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_20, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_21, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_22, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_23, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_24, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_25, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_26, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_27, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_28, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_29, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, - {PNG_BLOOD_FLOW_IMAGE_30, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, -}; - -BloodOxygenView::BloodOxygenView() +namespace OHOS { - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::BloodOxygenView"); - imageViewMain = nullptr; - imageViewProgress = nullptr; - group = nullptr; - percent = nullptr; - testButton = nullptr; - circleProgress = nullptr; - imageAnimator = nullptr; - g_pMainView = this; - bloodbandoff = new BloodBandoffView(); - if (bloodbandoff == nullptr) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new BloodBandoffView fail"); + // 按钮设置 + static constexpr uint16_t TESTBUTTON_ZERO = 0; + static constexpr uint16_t TESTBUTTON_X = 118; + static constexpr uint16_t TESTBUTTON_Y = 336; + + // 进度条参数设置 + static constexpr uint16_t CIRCLE_PROGRESS_VALUE = 100; + static constexpr uint16_t CIRCLE_PROGRESS_RADIUS = 43; + static constexpr uint16_t CIRCLE_PROGRESS_STARTANGLE = 360; + static constexpr uint16_t CIRCLE_PROGRESS_ENDANGLE = 0; + static constexpr uint16_t CIRCLE_PROGRESS_WIDTH = 10; + static constexpr uint16_t CIRCLE_PROGRESS_POSITION_X = 10; + static constexpr uint16_t CIRCLE_PROGRESS_POSITION_Y = 10; + static constexpr uint16_t CIRCLE_PROGRESS_CENTER_X = 195; + static constexpr uint16_t CIRCLE_PROGRESS_CENTER_Y = 37; + static constexpr uint16_t CIRCLE_PROGRESS_POSITION_WIDTH = 275; + static constexpr uint16_t CIRCLE_PROGRESS_POSITION_HEIGHT = 130; + static constexpr uint16_t CIRCLE_PROGRESS_LEFT = 10; + static constexpr uint16_t CIRCLE_PROGRESS_TOP = 5; + + // 动态刷新设置 + static constexpr uint16_t IMAGE_SIZE = 60; + static constexpr uint16_t IMAGE_POSITION_X = 186; + static constexpr uint16_t IMAGE_POSITION_Y = 23; + static constexpr uint16_t IMAGEANIMATORVIEW_SIZE = 31; + static constexpr uint16_t IMAGEANIMATORVIEW_SPEED = 40; + + // 血氧主图设置 + static constexpr uint16_t IMAGE_PROGRESS_POSITION_X = 176; + static constexpr uint16_t IMAGE_PROGRESS_POSITION_Y = 13; + + // 血氧%显示 + static constexpr uint16_t LABEL_PERCENT_POSITION_X = 258; + static constexpr uint16_t LABEL_PERCENT_POSITION_Y = 40; + + // 血氧柱状图 + static constexpr int16 VIEW_MAX_X = 415; + static constexpr int16 VIEW_MIN_X = 35; + static constexpr int16 VIEW_MAX_Y = 150; + static constexpr int16 VIEW_MIN_Y = 0; + static constexpr int16 VIEW_WIDTH = 7; + static constexpr int16 VIEW_HEIGHT = 300; + static constexpr uint16_t VIEW_BACKGROUND_OPA = 127; + static constexpr uint16_t VIEW_BORDER_RADIUS = 5; + static constexpr uint16_t BORDER_OPA = 127; + static constexpr uint16_t BORDER_WIDTH = 20; + + static constexpr uint16_t TITLE_LABEL_DEFAULT_HEIGHT = 30; + static constexpr uint16_t FONT_DEFAULT_SIZE = 20; + static constexpr uint16_t VIEW_DISTANCE_TO_LEFT_SIDE = 48; + static constexpr uint16_t TEXT_DISTANCE_TO_LEFT_SIDE = 50; + static constexpr uint16_t TEXT_DISTANCE_TO_TOP_SIDE = 11; + static constexpr uint16_t BUTTON_LABEL_SIZE = 26; + static constexpr uint8_t BUTTON_STYLE_BORDER_RADIUS_VALUE = 20; + static constexpr uint32 BUTTON_STYLE_BACKGROUND_COLOR_VALUE = 0xff0b1928; + static constexpr uint16_t BUTTON_WIDHT2 = 230; + static constexpr uint16_t BUTTON_HEIGHT2 = 80; + + // 字体大小 + static constexpr uint16_t PERCENT_FONT_SIZE = 25; + + static constexpr uint16_t MATH_ZERO = 0; + + static BloodOxygenView *g_pMainView = nullptr; + static ImageAnimatorInfo g_imageAnimatorInfo_new[31] = { + {PNG_BLOOD_FLOW_IMAGE_0, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_1, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_2, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_3, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_4, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_5, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_6, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_7, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_8, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_9, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_10, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_11, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_12, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_13, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_14, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_15, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_16, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_17, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_18, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_19, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_20, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_21, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_22, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_23, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_24, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_25, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_26, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_27, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_28, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_29, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + {PNG_BLOOD_FLOW_IMAGE_30, {IMAGE_POSITION_X, IMAGE_POSITION_Y}, IMAGE_SIZE, IMAGE_SIZE, IMG_SRC_FILE_PATH}, + }; + + BloodOxygenView::BloodOxygenView() + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::BloodOxygenView"); + imageViewMain = nullptr; + imageViewProgress = nullptr; + group = nullptr; + percent = nullptr; + testButton = nullptr; + circleProgress = nullptr; + imageAnimator = nullptr; + g_pMainView = this; + bloodbandoff = new BloodBandoffView(); + if (bloodbandoff == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new BloodBandoffView fail"); + } } -} - -BloodOxygenView::~BloodOxygenView() -{ - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::~BloodOxygenView"); - group->RemoveAll(); - delete imageViewMain; - delete imageViewProgress; - delete group; - delete testButton; - delete percent; - delete circleProgress; - delete imageAnimator; - delete bloodbandoff; - imageViewMain = nullptr; - imageViewProgress = nullptr; - group = nullptr; - percent = nullptr; - testButton = nullptr; - circleProgress = nullptr; - imageAnimator = nullptr; - g_pMainView = nullptr; - bloodbandoff = nullptr; -} - -BloodOxygenView *BloodOxygenView::GetInstance(void) -{ - return g_pMainView; -} - -UILabel *BloodOxygenView::GetPercent() -{ - return percent; -} - -UIViewGroup *BloodOxygenView::GetBloodOxygenGroup() -{ - return group; -} - -UILabelButton *BloodOxygenView::GetTestButton() -{ - return testButton; -} -UICircleProgress *BloodOxygenView::GetCircleProgress() -{ - return circleProgress; -} - -UILabelButton *BloodOxygenView::CreateAndSetUIButton(const char *title) -{ - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::CreateAndSetUIButton"); - UILabelButton* btn = new UILabelButton(); - if (btn == nullptr) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new UILabelButton fail"); - return nullptr; + BloodOxygenView::~BloodOxygenView() + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::~BloodOxygenView"); + group->RemoveAll(); + delete imageViewMain; + delete imageViewProgress; + delete group; + delete testButton; + delete percent; + delete circleProgress; + delete imageAnimator; + delete bloodbandoff; + imageViewMain = nullptr; + imageViewProgress = nullptr; + group = nullptr; + percent = nullptr; + testButton = nullptr; + circleProgress = nullptr; + imageAnimator = nullptr; + g_pMainView = nullptr; + bloodbandoff = nullptr; } - btn->SetPosition(TESTBUTTON_X, TESTBUTTON_Y, BUTTON_WIDHT2, BUTTON_HEIGHT2); - btn->SetText(title); - btn->SetTextColor(Color::Red()); - btn->SetFont(DEFAULT_VECTOR_FONT_FILENAME, BUTTON_LABEL_SIZE); - btn->SetAlign(TEXT_ALIGNMENT_CENTER); - btn->SetStyleForState(STYLE_BORDER_RADIUS, BUTTON_STYLE_BORDER_RADIUS_VALUE, UIButton::RELEASED); - btn->SetStyleForState(STYLE_BORDER_RADIUS, BUTTON_STYLE_BORDER_RADIUS_VALUE, UIButton::PRESSED); - btn->SetStyleForState(STYLE_BORDER_RADIUS, BUTTON_STYLE_BORDER_RADIUS_VALUE, UIButton::INACTIVE); - btn->SetStyleForState(STYLE_BACKGROUND_COLOR, BUTTON_STYLE_BACKGROUND_COLOR_VALUE, UIButton::RELEASED); - btn->SetStyleForState(STYLE_BACKGROUND_COLOR, BUTTON_STYLE_BACKGROUND_COLOR_VALUE, UIButton::PRESSED); - btn->SetStyleForState(STYLE_BACKGROUND_COLOR, BUTTON_STYLE_BACKGROUND_COLOR_VALUE, UIButton::INACTIVE); - UIView::OnClickListener* clickLeftListener = (UIView::OnClickListener*)OHOS::BloodOxygenPresenter::GetInstance(); - if (clickLeftListener == nullptr) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new clickLeftListener fail"); - return nullptr; - } - btn->SetOnClickListener(clickLeftListener); - return btn; -} - -bool BloodOxygenView::SetOnDragListener() -{ - UIView::OnDragListener *dragListener = (UIView::OnDragListener*)OHOS::BloodOxygenPresenter::GetInstance(); - if (dragListener == nullptr) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::OnDragListener fail"); - return false; + BloodOxygenView *BloodOxygenView::GetInstance(void) + { + return g_pMainView; } - group->SetDraggable(true); - group->SetTouchable(true); - group->SetOnDragListener(dragListener); - return true; -} -UIView *BloodOxygenView::CreateAndSetUIView(int16 x, int16 y) const -{ - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::CreateAndSetUIView"); - UIView* view = new UIView(); - if (view == nullptr) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new View fail"); - return nullptr; - } - if (x > VIEW_MAX_X || x < VIEW_MIN_X) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::X error"); - return nullptr; - } - if (y < VIEW_MIN_Y || y >VIEW_MAX_Y) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::Y error"); - return nullptr; + UILabel *BloodOxygenView::GetPercent() + { + return percent; } - view->SetStyle(STYLE_BACKGROUND_COLOR, Color::Green().full); - view->SetStyle(STYLE_BACKGROUND_OPA, VIEW_BACKGROUND_OPA); // 127 : background opacity - view->SetStyle(STYLE_BORDER_RADIUS, VIEW_BORDER_RADIUS); // 5 : radius value - view->SetStyle(STYLE_BORDER_COLOR, Color::Gray().full); - view->SetStyle(STYLE_BORDER_OPA, BORDER_OPA); // 127 : border opacity - view->SetStyle(STYLE_BORDER_WIDTH, BORDER_WIDTH); // 20 : border width - view->SetStyle(STYLE_PADDING_LEFT, MATH_ZERO); - view->SetStyle(STYLE_PADDING_RIGHT, MATH_ZERO); - view->SetStyle(STYLE_PADDING_TOP, MATH_ZERO); - view->SetStyle(STYLE_PADDING_BOTTOM, MATH_ZERO); - view->SetStyle(STYLE_MARGIN_LEFT, MATH_ZERO); - view->SetStyle(STYLE_MARGIN_RIGHT, MATH_ZERO); - view->SetStyle(STYLE_MARGIN_TOP, MATH_ZERO); - view->SetStyle(STYLE_MARGIN_BOTTOM, MATH_ZERO); - - view->SetPosition(x, VIEW_HEIGHT - y); - view->SetStyle(STYLE_BORDER_WIDTH, MATH_ZERO); - view->SetStyle(STYLE_BORDER_RADIUS, MATH_ZERO); // 2 : half width 10 : offset - view->Resize(VIEW_WIDTH, y); - return view; -} -UICircleProgress *BloodOxygenView::CreateAndSetUICircleProgress() -{ - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::CreateAndSetUICircleProgress"); - UICircleProgress *circle = new UICircleProgress(); - circle->SetPosition(CIRCLE_PROGRESS_POSITION_X, CIRCLE_PROGRESS_POSITION_Y, - CIRCLE_PROGRESS_POSITION_WIDTH, CIRCLE_PROGRESS_POSITION_HEIGHT); - circle->SetCenterPosition(CIRCLE_PROGRESS_CENTER_X, CIRCLE_PROGRESS_CENTER_Y); - circle->SetRadius(CIRCLE_PROGRESS_RADIUS); - circle->SetValue(CIRCLE_PROGRESS_VALUE); - circle->SetBackgroundStyle(STYLE_LINE_WIDTH, - circle->GetBackgroundStyle(STYLE_LINE_WIDTH) + CIRCLE_PROGRESS_WIDTH); - circle->SetForegroundStyle(STYLE_LINE_WIDTH, - circle->GetForegroundStyle(STYLE_LINE_WIDTH) + CIRCLE_PROGRESS_WIDTH); - circle->SetStyle(STYLE_PADDING_LEFT, CIRCLE_PROGRESS_LEFT); - circle->SetStyle(STYLE_PADDING_TOP, CIRCLE_PROGRESS_TOP); - circle->SetStartAngle(CIRCLE_PROGRESS_STARTANGLE); - circle->SetEndAngle(CIRCLE_PROGRESS_ENDANGLE); - circle->SetImage(nullptr, PNG_PROGRESS_BAR_TMAGE); - circle->SetLineColor(Color::Black()); - - return circle; -} - -bool BloodOxygenView::InitImageDisplay() -{ - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::InitImageDisplay"); - imageViewMain = new UIImageView(); - if (imageViewMain == nullptr) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new UIImageView fail"); - return false; - } - imageViewMain->SetPosition(MATH_ZERO, MATH_ZERO); // 30 : offset - imageViewMain->SetSrc(PNG_BLOODOXYGEN_IMAGE_PATH); - group->Add(imageViewMain); - - imageAnimator = new UIImageAnimatorView(); - if (imageAnimator == nullptr) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new UIImageAnimatorView fail"); - return false; - } - imageAnimator->SetImageAnimatorSrc(g_imageAnimatorInfo_new, IMAGEANIMATORVIEW_SIZE, IMAGEANIMATORVIEW_SPEED); - imageAnimator->Start(); - imageAnimator->SetRepeat(true); - group->Add(imageAnimator); - - imageViewProgress = new UIImageView(); - if (imageViewProgress == nullptr) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new UIImageView fail"); - return false; + UIViewGroup *BloodOxygenView::GetBloodOxygenGroup() + { + return group; } - imageViewProgress->SetPosition(IMAGE_PROGRESS_POSITION_X, IMAGE_PROGRESS_POSITION_Y); // 30 : offset - imageViewProgress->SetSrc(PNG_PROGRESS_BAR_TMAGE); - group->Add(imageViewProgress); - return true; -} + UILabelButton *BloodOxygenView::GetTestButton() + { + return testButton; + } -void BloodOxygenView::OnStart() -{ - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::OnStart"); - View::OnStart(); + UICircleProgress *BloodOxygenView::GetCircleProgress() + { + return circleProgress; + } + UILabelButton *BloodOxygenView::CreateAndSetUIButton(const char *title) + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::CreateAndSetUIButton"); + UILabelButton *btn = new UILabelButton(); + if (btn == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new UILabelButton fail"); + return nullptr; + } + btn->SetPosition(TESTBUTTON_X, TESTBUTTON_Y, BUTTON_WIDHT2, BUTTON_HEIGHT2); + btn->SetText(title); + btn->SetTextColor(Color::White()); + btn->SetFont(DEFAULT_VECTOR_FONT_FILENAME, BUTTON_LABEL_SIZE); + btn->SetAlign(TEXT_ALIGNMENT_CENTER); + btn->SetStyle(STYLE_BACKGROUND_COLOR, 0xffCD492C); + btn->SetStyleForState(STYLE_BACKGROUND_COLOR, BUTTON_STYLE_BACKGROUND_COLOR_VALUE, UIButton::INACTIVE); +#if 0 + btn->SetStyleForState(STYLE_BORDER_RADIUS, BUTTON_STYLE_BORDER_RADIUS_VALUE, UIButton::RELEASED); + btn->SetStyleForState(STYLE_BORDER_RADIUS, BUTTON_STYLE_BORDER_RADIUS_VALUE, UIButton::PRESSED); + btn->SetStyleForState(STYLE_BORDER_RADIUS, BUTTON_STYLE_BORDER_RADIUS_VALUE, UIButton::INACTIVE); + btn->SetStyleForState(STYLE_BACKGROUND_COLOR, BUTTON_STYLE_BACKGROUND_COLOR_VALUE, UIButton::RELEASED); + btn->SetStyleForState(STYLE_BACKGROUND_COLOR, BUTTON_STYLE_BACKGROUND_COLOR_VALUE, UIButton::PRESSED); +#endif + UIView::OnClickListener *clickLeftListener = (UIView::OnClickListener *)OHOS::BloodOxygenPresenter::GetInstance(); + if (clickLeftListener == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new clickLeftListener fail"); + return nullptr; + } + btn->SetOnClickListener(clickLeftListener); + return btn; + } - group = new UIViewGroup(); - if (group == nullptr) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new group fail"); - return; + bool BloodOxygenView::SetOnDragListener() + { + UIView::OnDragListener *dragListener = (UIView::OnDragListener *)OHOS::BloodOxygenPresenter::GetInstance(); + if (dragListener == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::OnDragListener fail"); + return false; + } + group->SetDraggable(true); + group->SetTouchable(true); + group->SetOnDragListener(dragListener); + return true; } - group->SetPosition(MATH_ZERO, MATH_ZERO); - group->Resize(VERTICAL_RESOLUTION, HORIZONTAL_RESOLUTION); - //增加按键监听 - RootView::OnKeyActListener*keyactListener = (RootView::OnKeyActListener*)OHOS::BloodOxygenPresenter::GetInstance(); - RootView::GetInstance()->SetOnKeyActListener(keyactListener); + UIView *BloodOxygenView::CreateAndSetUIView(int16 x, int16 y) const + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::CreateAndSetUIView"); + UIView *view = new UIView(); + if (view == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new View fail"); + return nullptr; + } + if (x > VIEW_MAX_X || x < VIEW_MIN_X) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::X error"); + return nullptr; + } + if (y < VIEW_MIN_Y || y > VIEW_MAX_Y) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::Y error"); + return nullptr; + } + view->SetStyle(STYLE_BACKGROUND_COLOR, Color::Green().full); + view->SetStyle(STYLE_BACKGROUND_OPA, VIEW_BACKGROUND_OPA); // 127 : background opacity + view->SetStyle(STYLE_BORDER_RADIUS, VIEW_BORDER_RADIUS); // 5 : radius value + view->SetStyle(STYLE_BORDER_COLOR, Color::Gray().full); + view->SetStyle(STYLE_BORDER_OPA, BORDER_OPA); // 127 : border opacity + view->SetStyle(STYLE_BORDER_WIDTH, BORDER_WIDTH); // 20 : border width + view->SetStyle(STYLE_PADDING_LEFT, MATH_ZERO); + view->SetStyle(STYLE_PADDING_RIGHT, MATH_ZERO); + view->SetStyle(STYLE_PADDING_TOP, MATH_ZERO); + view->SetStyle(STYLE_PADDING_BOTTOM, MATH_ZERO); + view->SetStyle(STYLE_MARGIN_LEFT, MATH_ZERO); + view->SetStyle(STYLE_MARGIN_RIGHT, MATH_ZERO); + view->SetStyle(STYLE_MARGIN_TOP, MATH_ZERO); + view->SetStyle(STYLE_MARGIN_BOTTOM, MATH_ZERO); + + view->SetPosition(x, VIEW_HEIGHT - y); + view->SetStyle(STYLE_BORDER_WIDTH, MATH_ZERO); + view->SetStyle(STYLE_BORDER_RADIUS, MATH_ZERO); // 2 : half width 10 : offset + view->Resize(VIEW_WIDTH, y); + return view; + } - if (InitImageDisplay() == false) { - return; + UICircleProgress *BloodOxygenView::CreateAndSetUICircleProgress() + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::CreateAndSetUICircleProgress"); + UICircleProgress *circle = new UICircleProgress(); + circle->SetPosition(CIRCLE_PROGRESS_POSITION_X, CIRCLE_PROGRESS_POSITION_Y, + CIRCLE_PROGRESS_POSITION_WIDTH, CIRCLE_PROGRESS_POSITION_HEIGHT); + circle->SetCenterPosition(CIRCLE_PROGRESS_CENTER_X, CIRCLE_PROGRESS_CENTER_Y); + circle->SetRadius(CIRCLE_PROGRESS_RADIUS); + circle->SetValue(CIRCLE_PROGRESS_VALUE); + circle->SetBackgroundStyle(STYLE_LINE_WIDTH, + circle->GetBackgroundStyle(STYLE_LINE_WIDTH) + CIRCLE_PROGRESS_WIDTH); + circle->SetForegroundStyle(STYLE_LINE_WIDTH, + circle->GetForegroundStyle(STYLE_LINE_WIDTH) + CIRCLE_PROGRESS_WIDTH); + circle->SetStyle(STYLE_PADDING_LEFT, CIRCLE_PROGRESS_LEFT); + circle->SetStyle(STYLE_PADDING_TOP, CIRCLE_PROGRESS_TOP); + circle->SetStartAngle(CIRCLE_PROGRESS_STARTANGLE); + circle->SetEndAngle(CIRCLE_PROGRESS_ENDANGLE); + circle->SetImage(nullptr, PNG_PROGRESS_BAR_TMAGE); + circle->SetLineColor(Color::Black()); + + return circle; } - if (SetOnDragListener() == false) { - return; + bool BloodOxygenView::InitImageDisplay() + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::InitImageDisplay"); + imageViewMain = new UIImageView(); + if (imageViewMain == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new UIImageView fail"); + return false; + } + imageViewMain->SetPosition(MATH_ZERO, MATH_ZERO); // 30 : offset + imageViewMain->SetSrc(PNG_BLOODOXYGEN_IMAGE_PATH); + group->Add(imageViewMain); + + imageAnimator = new UIImageAnimatorView(); + if (imageAnimator == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new UIImageAnimatorView fail"); + return false; + } + imageAnimator->SetImageAnimatorSrc(g_imageAnimatorInfo_new, IMAGEANIMATORVIEW_SIZE, IMAGEANIMATORVIEW_SPEED); + imageAnimator->Start(); + imageAnimator->SetRepeat(true); + group->Add(imageAnimator); + + imageViewProgress = new UIImageView(); + if (imageViewProgress == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new UIImageView fail"); + return false; + } + imageViewProgress->SetPosition(IMAGE_PROGRESS_POSITION_X, IMAGE_PROGRESS_POSITION_Y); // 30 : offset + imageViewProgress->SetSrc(PNG_PROGRESS_BAR_TMAGE); + group->Add(imageViewProgress); + + return true; } - circleProgress = CreateAndSetUICircleProgress(); - if (circleProgress == nullptr) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new circleProgress fail"); - return; + void BloodOxygenView::OnStart() + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::OnStart"); + View::OnStart(); + + group = new UIViewGroup(); + if (group == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new group fail"); + return; + } + group->SetPosition(MATH_ZERO, MATH_ZERO); + group->Resize(VERTICAL_RESOLUTION, HORIZONTAL_RESOLUTION); + + // 增加按键监听 + RootView::OnKeyActListener *keyactListener = (RootView::OnKeyActListener *)OHOS::BloodOxygenPresenter::GetInstance(); + RootView::GetInstance()->SetOnKeyActListener(keyactListener); + + if (InitImageDisplay() == false) + { + return; + } + + if (SetOnDragListener() == false) + { + return; + } + + circleProgress = CreateAndSetUICircleProgress(); + if (circleProgress == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new circleProgress fail"); + return; + } + group->Add(circleProgress); + + percent = new UILabel(); + if (percent == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new Label fail"); + return; + } + percent->SetPosition(LABEL_PERCENT_POSITION_X, LABEL_PERCENT_POSITION_Y, + VIEW_DISTANCE_TO_LEFT_SIDE, TITLE_LABEL_DEFAULT_HEIGHT); + percent->SetStyle(STYLE_BACKGROUND_COLOR, OPA_TRANSPARENT); + percent->SetText("%97"); + percent->SetFont(DEFAULT_VECTOR_FONT_FILENAME, PERCENT_FONT_SIZE); + percent->SetTextColor(Color::White()); + group->Add(percent); + + testButton = CreateAndSetUIButton("开始检测"); + if (testButton == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new Button fail"); + return; + } + group->Add(testButton); + + if (OHOS::BloodOxygenModel::GetInstance()->GetBloodOxygenViewStatus() == true) + { + testButton->SetTouchable(false); + percent->SetText(""); + } + + BloodBandoffView::GetInstance()->CreateUIViewGroup(); + + RootView::GetInstance()->Add(group); + RootView::GetInstance()->Add(BloodBandoffView::GetInstance()->GetBandoffViewGroup()); + BloodBandoffView::GetInstance()->GetBandoffViewGroup()->SetVisible(false); } - group->Add(circleProgress); - percent = new UILabel(); - if (percent == nullptr) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new Label fail"); - return; + void BloodOxygenView::OnSetUpView() + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::OnSetUpView"); + View::OnSetUpView(); + Draw(); } - percent->SetPosition(LABEL_PERCENT_POSITION_X, LABEL_PERCENT_POSITION_Y, - VIEW_DISTANCE_TO_LEFT_SIDE, TITLE_LABEL_DEFAULT_HEIGHT); - percent->SetStyle(STYLE_BACKGROUND_COLOR, OPA_TRANSPARENT); - percent->SetText("%97"); - percent->SetFont(DEFAULT_VECTOR_FONT_FILENAME, PERCENT_FONT_SIZE); - percent->SetTextColor(Color::Red()); - group->Add(percent); - - testButton = CreateAndSetUIButton("测试"); - if (testButton == nullptr) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::new Button fail"); + + void BloodOxygenView::OnTearDownView() + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::OnTearDownView"); + View::OnTearDownView(); return; } - group->Add(testButton); - if (OHOS::BloodOxygenModel::GetInstance()->GetBloodOxygenViewStatus() == true) { - testButton->SetTouchable(false); - percent->SetText(""); + void BloodOxygenView::OnStop() + { + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::OnStop"); + View::OnStop(); + RootView::GetInstance()->RemoveAll(); + return; } - - BloodBandoffView::GetInstance()->CreateUIViewGroup(); - - RootView::GetInstance()->Add(group); - RootView::GetInstance()->Add(BloodBandoffView::GetInstance()->GetBandoffViewGroup()); - BloodBandoffView::GetInstance()->GetBandoffViewGroup()->SetVisible(false); -} - -void BloodOxygenView::OnSetUpView() -{ - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::OnSetUpView"); - View::OnSetUpView(); - Draw(); -} - - -void BloodOxygenView::OnTearDownView() -{ - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::OnTearDownView"); - View::OnTearDownView(); - return; -} - -void BloodOxygenView::OnStop() -{ - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "BloodOxygenView::OnStop"); - View::OnStop(); - RootView::GetInstance()->RemoveAll(); - return; -} } diff --git a/code/sdk/application/wearable/nativeapp/nativeui/main/include/MainPresenterSample.h b/code/sdk/application/wearable/nativeapp/nativeui/main/include/MainPresenterSample.h index 554625c65..c43fedb2c 100755 --- a/code/sdk/application/wearable/nativeapp/nativeui/main/include/MainPresenterSample.h +++ b/code/sdk/application/wearable/nativeapp/nativeui/main/include/MainPresenterSample.h @@ -2,7 +2,7 @@ * @Author: Caisking 3449750381@qq.com * @Date: 2023-12-13 19:33:14 * @LastEditors: Caisking 3449750381@qq.com - * @LastEditTime: 2024-01-17 19:53:31 + * @LastEditTime: 2024-01-25 16:48:46 * @FilePath: /FD230/code/sdk/application/wearable/nativeapp/nativeui/main/include/MainPresenterSample.h * @Description: * @ @@ -68,7 +68,7 @@ public: void OnStop() override; virtual void Notify() override; bool OnClick(UIView& view, const ClickEvent& event) override; - bool OnLongPress(UIView& view, const LongPressEvent& event) override; + bool OnLongPress(UIView& view, const LongPressEvent& event) override; virtual void OnSwipe(UISwipeView& view) override; void setCallback(ZoomEffect* callback) { diff --git a/code/sdk/application/wearable/nativeapp/nativeui/main/include/MainViewSample.h b/code/sdk/application/wearable/nativeapp/nativeui/main/include/MainViewSample.h index c1da733e2..52d572ab5 100755 --- a/code/sdk/application/wearable/nativeapp/nativeui/main/include/MainViewSample.h +++ b/code/sdk/application/wearable/nativeapp/nativeui/main/include/MainViewSample.h @@ -29,7 +29,7 @@ #include "PullUpDownView.h" #include "components/ui_cross_view.h" #include "dial/include/Digital_clockView.h" -#include "blood/include/BloodView.h" +#include "blood/include/BloodCardView.h" #include "traing/include/TraingView.h" #include "ApplistCardView.h" #include "weather/include/WeatherControlView.h" @@ -89,7 +89,7 @@ namespace OHOS CompassControlView *compassControlView{nullptr}; HeartRateView *heartRateView{nullptr}; Digital_clockView *dialView{nullptr}; - BloodView *bloodView{nullptr}; + BloodCardView *bloodView{nullptr}; WeatherControlView *weatherControlView{nullptr}; TraingView *traingView{nullptr}; ApplistCardView *applistCardView{nullptr}; diff --git a/code/sdk/application/wearable/nativeapp/nativeui/main/src/MainViewSample.cpp b/code/sdk/application/wearable/nativeapp/nativeui/main/src/MainViewSample.cpp index b4d46fb23..a6a597352 100755 --- a/code/sdk/application/wearable/nativeapp/nativeui/main/src/MainViewSample.cpp +++ b/code/sdk/application/wearable/nativeapp/nativeui/main/src/MainViewSample.cpp @@ -275,11 +275,13 @@ namespace OHOS MessageLable->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30); messageView->Add(MessageLable); /* -------------------------------------------------------------------------- */ - messageView->PreLoad(); + messageView->SetViewId("messageView"); messageView->SetPosition(0, 0, Screen::GetInstance().GetWidth(), Screen::GetInstance().GetHeight()); messageView->SetStyle(STYLE_BACKGROUND_OPA, OPA_TRANSPARENT); + messageView->PreLoad(); messageView->SetDraggable(false); + messageView->SetIntercept(true); #endif /* -------------------------------------------------------------------------- */ #if 0 @@ -405,7 +407,7 @@ namespace OHOS // 主界面血氧卡片 UICardPage *MainViewSample::InitBloodOxygenPage(void) { - bloodView = new BloodView(); + bloodView = new BloodCardView(); if (bloodView == nullptr) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "BloodView new fail"); diff --git a/code/sdk/application/wearable/nativeapp/nativeui/message/src/MessageView.cpp b/code/sdk/application/wearable/nativeapp/nativeui/message/src/MessageView.cpp index cdc1f6ecd..9f054410b 100644 --- a/code/sdk/application/wearable/nativeapp/nativeui/message/src/MessageView.cpp +++ b/code/sdk/application/wearable/nativeapp/nativeui/message/src/MessageView.cpp @@ -174,7 +174,6 @@ namespace OHOS MessageList->SetStyle(STYLE_BACKGROUND_COLOR, 0xff000000); Add(MessageList); MessageList->SetAdapter(p_MessageListAdapter); - MessageList->SetLoopState(true); MessageList->SetVisible(true); return true; } -- 2.17.1