From ab269c43aaae0def42a13a614a665876899196f6 Mon Sep 17 00:00:00 2001 From: =?utf8?q?=E7=BD=97=E6=AD=A3?= <1732036298@qq.com> Date: Sat, 12 Oct 2024 06:55:01 +0000 Subject: [PATCH] Merge #1169 into sdk602patch0911 from refs/changes/1169/head MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit #99解决,,给可以滚动视图添加表冠控制旋转表冠一直触发(需求) * refs/changes/1169/head: (2 commits squashed) - #99解决,,给可以滚动视图添加表冠控制旋转表冠一直触发(需求) - 关机动画使用IMG_SRC_FILE_PATH而不用IMG_SRC_IMAGE_INFO ,解决关机动画出现慢问题 Signed-off-by: 罗正 <1732036298@qq.com> Reviewed-by: snickersun@163.com Merged-by: snickersun@163.com CR-link: https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230/change/1169 --- .../nativeui/alarm/src/MainAlarmView.cpp | 3 + .../compass/src/CompassCalibrationView.cpp | 3 + .../src/MotionRecognitionView.cpp | 5 +- .../src/MusicPlayerBTConnectFailedView.cpp | 5 +- .../src/MusicPlayerBluetoothDisConView.cpp | 5 +- .../player/src/MusicPlayerSourceView.cpp | 3 + .../include/ShutDownImageAnimatorView.h | 5 +- .../src/ShutDownImageAnimatorView.cpp | 16 ++--- .../src/RespiratoryTrainingCompletedView.cpp | 5 +- .../stopwatch/src/MainStopWatchView.cpp | 3 + .../weather/src/FutureWeatherView.cpp | 5 +- .../src/notify/drinkReminder_notification.cpp | 68 +++++++++++++----- .../src/notify/pairing_notification.cpp | 11 ++- .../notify/sedentaryReminder_notification.cpp | 69 ++++++++++++++----- 14 files changed, 153 insertions(+), 53 deletions(-) diff --git a/code/sdk/application/wearable/fd230app/nativeui/alarm/src/MainAlarmView.cpp b/code/sdk/application/wearable/fd230app/nativeui/alarm/src/MainAlarmView.cpp index f602cab92..5b2a89de2 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/alarm/src/MainAlarmView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/alarm/src/MainAlarmView.cpp @@ -71,6 +71,7 @@ MainAlarmView::~MainAlarmView() // addButton = nullptr; if(group) { + group->ClearFocus(); delete group; group = nullptr; } @@ -496,6 +497,8 @@ void MainAlarmView::OnStart() group->SetTouchable(true); group->SetDraggable(true); group->SetDirection(UIScrollView::VERTICAL); + group->RequestFocus(); + group->SetRotateFactor(1.0); UIView::OnDragListener *alarmDragListener = (UIView::OnDragListener *)OHOS::AlarmPresenter::GetInstance(); if (alarmDragListener == nullptr) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new alarmDragListener fail"); diff --git a/code/sdk/application/wearable/fd230app/nativeui/compass/src/CompassCalibrationView.cpp b/code/sdk/application/wearable/fd230app/nativeui/compass/src/CompassCalibrationView.cpp index 56b56e2dc..59962ec2d 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/compass/src/CompassCalibrationView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/compass/src/CompassCalibrationView.cpp @@ -56,6 +56,7 @@ void CompassCalibrationView::ClearAll(void) delete labelTwo; labelTwo = nullptr; } + scrollView->ClearFocus(); delete scrollView; scrollView = nullptr; } @@ -84,6 +85,8 @@ bool CompassCalibrationView::CreateUIViewGroup(void) scrollView->SetThrowDrag(true); scrollView->SetMaxScrollDistance(1000); scrollView->SetDirection(UIScrollView::VERTICAL); + scrollView->RequestFocus(); + scrollView->SetRotateFactor(1.0); /* -------------------------------------------------------------------------- */ if (labelOne == nullptr) { diff --git a/code/sdk/application/wearable/fd230app/nativeui/motionrecognition/src/MotionRecognitionView.cpp b/code/sdk/application/wearable/fd230app/nativeui/motionrecognition/src/MotionRecognitionView.cpp index a3cf94673..f38efecc0 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/motionrecognition/src/MotionRecognitionView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/motionrecognition/src/MotionRecognitionView.cpp @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-04-23 17:28:52 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-10-08 18:14:26 + * @LastEditTime: 2024-10-12 11:17:45 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/motionrecognition/src/MotionRecognitionView.cpp */ #include "motionrecognition/include/MotionRecognitionPresenter.h" @@ -68,6 +68,7 @@ namespace OHOS note = nullptr; } + scrollView->ClearFocus(); delete scrollView; scrollView = nullptr; } @@ -85,6 +86,8 @@ namespace OHOS scrollView->SetHorizontalScrollState(false); scrollView->SetReboundSize(35); scrollView->SetOnDragListener(presenter_); + scrollView->RequestFocus(); + scrollView->SetRotateFactor(1.0); /* -------------------------------------------------------------------------- */ Title = new UILabelExt(); if (Title == nullptr) diff --git a/code/sdk/application/wearable/fd230app/nativeui/player/src/MusicPlayerBTConnectFailedView.cpp b/code/sdk/application/wearable/fd230app/nativeui/player/src/MusicPlayerBTConnectFailedView.cpp index 5d90e3328..0142c6b7f 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/player/src/MusicPlayerBTConnectFailedView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/player/src/MusicPlayerBTConnectFailedView.cpp @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-08-12 11:31:43 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-09-23 15:42:03 + * @LastEditTime: 2024-10-12 11:15:50 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/player/src/MusicPlayerBTConnectFailedView.cpp */ #include "player/include/MusicPlayerBTConnectFailedView.h" @@ -90,6 +90,7 @@ namespace OHOS delete CloseButton; CloseButton = nullptr; } + scrollView->ClearFocus(); delete scrollView; scrollView = nullptr; } @@ -287,6 +288,8 @@ namespace OHOS scrollView->SetThrowDrag(true); scrollView->SetMaxScrollDistance(1000); scrollView->SetDirection(UIScrollView::VERTICAL); + scrollView->RequestFocus(); + scrollView->SetRotateFactor(1.0); /* --------------------------------- 获取蓝牙名称 --------------------------------- */ get_bt_name(); diff --git a/code/sdk/application/wearable/fd230app/nativeui/player/src/MusicPlayerBluetoothDisConView.cpp b/code/sdk/application/wearable/fd230app/nativeui/player/src/MusicPlayerBluetoothDisConView.cpp index a857d7132..c7e9497e0 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/player/src/MusicPlayerBluetoothDisConView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/player/src/MusicPlayerBluetoothDisConView.cpp @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-08-10 16:23:46 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-09-23 15:40:20 + * @LastEditTime: 2024-10-12 11:20:55 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/player/src/MusicPlayerBluetoothDisConView.cpp */ #include "player/include/MusicPlayerBluetoothDisConView.h" @@ -89,6 +89,7 @@ namespace OHOS delete OkLabel; OkLabel = nullptr; } + scrollView->ClearFocus(); delete scrollView; scrollView = nullptr; } @@ -298,6 +299,8 @@ namespace OHOS scrollView->SetScrollBlankSize(50); scrollView->SetReboundSize(35); scrollView->SetDirection(UIScrollView::VERTICAL); + scrollView->RequestFocus(); + scrollView->SetRotateFactor(1.0); if (!CreateMusicPlayerBluetoothDisConViewLabel() || !CreateMusicPlayerBluetoothDisConViewImage() || !CreateMusicPlayerBluetoothDisConViewButton()) { diff --git a/code/sdk/application/wearable/fd230app/nativeui/player/src/MusicPlayerSourceView.cpp b/code/sdk/application/wearable/fd230app/nativeui/player/src/MusicPlayerSourceView.cpp index 2f67c8d68..21c8e3c8b 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/player/src/MusicPlayerSourceView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/player/src/MusicPlayerSourceView.cpp @@ -185,6 +185,7 @@ namespace OHOS delete bluetoothHeadsetConnectState; bluetoothHeadsetConnectState = nullptr; } + scrollView->ClearFocus(); delete scrollView; scrollView = nullptr; } @@ -452,6 +453,8 @@ namespace OHOS scrollView->SetDragACCLevel(5); scrollView->SetSwipeACCLevel(800); /*设置手指抬起屏幕后的补偿距离。*/ scrollView->SetDirection(UIScrollView::VERTICAL); + scrollView->RequestFocus(); + scrollView->SetRotateFactor(1.0); group->Add(scrollView); if (!CreateMusicPlayerSourceViewLabelButton() || !CreateMusicPlayerSourceViewLabel() || !CreateMusicPlayerSourceViewImage()) diff --git a/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/include/ShutDownImageAnimatorView.h b/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/include/ShutDownImageAnimatorView.h index 0e23c99d6..c57f5246c 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/include/ShutDownImageAnimatorView.h +++ b/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/include/ShutDownImageAnimatorView.h @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-07-20 11:05:46 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-10-11 16:13:29 + * @LastEditTime: 2024-10-12 14:29:17 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/include/ShutDownImageAnimatorView.h */ @@ -41,7 +41,8 @@ namespace OHOS UIViewGroup *group{nullptr}; UIImageAnimatorView *shutDownImageAnimatorView{nullptr}; // 关机动画 ImageAnimatorInfo ShutDownImageInfo[SHUTDOWN_IMAGE_ANIMATOR_VIEW_NUM_FRAMES]; // 关机图像的信息 - const ImageInfo **ShutDownPathsArray{nullptr}; // 关机图片路径数组 + const char **ShutDownPathsArray{nullptr}; + // const ImageInfo **ShutDownPathsArray{nullptr}; // 关机图片路径数组 int OperationType; bool isShutDownImageAnimatorStart{false}; }; diff --git a/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/src/ShutDownImageAnimatorView.cpp b/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/src/ShutDownImageAnimatorView.cpp index 29d932b1b..8116e9a6d 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/src/ShutDownImageAnimatorView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/rebootandshutdown/src/ShutDownImageAnimatorView.cpp @@ -41,8 +41,8 @@ namespace OHOS delete shutDownImageAnimatorView; shutDownImageAnimatorView = nullptr; } - // FreeImageInfoArray(ShutDownPathsArray, SHUTDOWN_IMAGE_ANIMATOR_VIEW_NUM_FRAMES); - FreeImageInfoArray(ShutDownPathsArray,ShutDownPaths,SHUTDOWN_IMAGE_ANIMATOR_VIEW_NUM_FRAMES); + FreeImagePathsArray(ShutDownPathsArray, SHUTDOWN_IMAGE_ANIMATOR_VIEW_NUM_FRAMES); + // FreeImageInfoArray(ShutDownPathsArray,ShutDownPaths,SHUTDOWN_IMAGE_ANIMATOR_VIEW_NUM_FRAMES); delete group; group = nullptr; } @@ -98,8 +98,8 @@ namespace OHOS bool ShutDownImageAnimatorView::ShowUpShutDownAnimatorView() { WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "ShutDownImageAnimatorView::ShowUpShutDownAnimatorView"); - // ShutDownPathsArray = CreateImagePathsArray(ShutDownPaths, SHUTDOWN_IMAGE_ANIMATOR_VIEW_NUM_FRAMES); - ShutDownPathsArray = CreateImageInfoArray(ShutDownPaths, SHUTDOWN_IMAGE_ANIMATOR_VIEW_NUM_FRAMES); + ShutDownPathsArray = CreateImagePathsArray(ShutDownPaths, SHUTDOWN_IMAGE_ANIMATOR_VIEW_NUM_FRAMES); + // ShutDownPathsArray = CreateImageInfoArray(ShutDownPaths, SHUTDOWN_IMAGE_ANIMATOR_VIEW_NUM_FRAMES); if (shutDownImageAnimatorView == nullptr) { @@ -111,10 +111,10 @@ namespace OHOS } for (uint8_t i = 0; i < SHUTDOWN_IMAGE_ANIMATOR_VIEW_NUM_FRAMES; i++) { - // ShutDownImageInfo[i].imagePath = (ShutDownPathsArray[i]); - // ShutDownImageInfo[i].imageType = IMG_SRC_FILE_PATH; - ShutDownImageInfo[i].imageInfo = (ShutDownPathsArray[i]); - ShutDownImageInfo[i].imageType = IMG_SRC_IMAGE_INFO; + ShutDownImageInfo[i].imagePath = (ShutDownPathsArray[i]); + ShutDownImageInfo[i].imageType = IMG_SRC_FILE_PATH; + // ShutDownImageInfo[i].imageInfo = (ShutDownPathsArray[i]); + // ShutDownImageInfo[i].imageType = IMG_SRC_IMAGE_INFO; ShutDownImageInfo[i].pos.x = SHUTDOWN_IMAGE_ANIMATOR_VIEW_X; ShutDownImageInfo[i].pos.y = SHUTDOWN_IMAGE_ANIMATOR_VIEW_Y; ShutDownImageInfo[i].width = SHUTDOWN_IMAGE_ANIMATOR_VIEW_W; diff --git a/code/sdk/application/wearable/fd230app/nativeui/respiratorytraining/src/RespiratoryTrainingCompletedView.cpp b/code/sdk/application/wearable/fd230app/nativeui/respiratorytraining/src/RespiratoryTrainingCompletedView.cpp index d216594e3..3713d603a 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/respiratorytraining/src/RespiratoryTrainingCompletedView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/respiratorytraining/src/RespiratoryTrainingCompletedView.cpp @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-05-07 11:25:58 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-10-04 19:53:55 + * @LastEditTime: 2024-10-12 11:19:25 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/RespiratoryTrainingCompleted/src/RespiratoryTrainingCompletedView.cpp */ @@ -89,6 +89,7 @@ namespace OHOS RTCLabelButton = nullptr; } + ScrollView->ClearFocus(); delete ScrollView; ScrollView = nullptr; } @@ -155,6 +156,8 @@ namespace OHOS ScrollView->SetHorizontalScrollState(false); ScrollView->SetTouchable(true); ScrollView->SetDraggable(true); + ScrollView->RequestFocus(); + ScrollView->SetRotateFactor(1.0); return true; } diff --git a/code/sdk/application/wearable/fd230app/nativeui/stopwatch/src/MainStopWatchView.cpp b/code/sdk/application/wearable/fd230app/nativeui/stopwatch/src/MainStopWatchView.cpp index a833ab630..fd4848626 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/stopwatch/src/MainStopWatchView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/stopwatch/src/MainStopWatchView.cpp @@ -67,6 +67,7 @@ namespace OHOS if (list != nullptr) { + list->ClearFocus(); delete list; list = nullptr; } @@ -306,6 +307,8 @@ namespace OHOS list->SetDragACCLevel(5); list->SetSwipeACCLevel(800); /*设置手指抬起屏幕后的补偿距离。*/ list->SetVisible(false); + list->RequestFocus(); + list->SetRotateFactor(1.0); /* ------------------------------- listadapter ------------------------------ */ listadapter = new TextAdapter(); if (listadapter == nullptr) diff --git a/code/sdk/application/wearable/fd230app/nativeui/weather/src/FutureWeatherView.cpp b/code/sdk/application/wearable/fd230app/nativeui/weather/src/FutureWeatherView.cpp index 7a9183566..c3911227f 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/weather/src/FutureWeatherView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/weather/src/FutureWeatherView.cpp @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-01-29 15:37:44 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-08-17 16:27:56 + * @LastEditTime: 2024-10-12 11:26:06 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/weather/src/FutureWeatherView.cpp */ #include "weather/include/FutureWeatherView.h" @@ -47,6 +47,7 @@ namespace OHOS delete futureWeatherListAdapter; futureWeatherListAdapter = nullptr; + FutureWeatherList->ClearFocus(); delete FutureWeatherList; FutureWeatherList = nullptr; } @@ -94,6 +95,8 @@ namespace OHOS FutureWeatherList->SetSwipeACCLevel(800); WeatherModel::GetInstance().InitFutureWeatherItem(); FutureWeatherList->SetAdapter(futureWeatherListAdapter); + FutureWeatherList->RequestFocus(); + FutureWeatherList->SetRotateFactor(1.0); FutureWeatherList->SetIntercept(true); Add(FutureWeatherList); viewInitStatus = true; diff --git a/code/sdk/application/wearable/service/msg_center/src/notify/drinkReminder_notification.cpp b/code/sdk/application/wearable/service/msg_center/src/notify/drinkReminder_notification.cpp index 7cb4f9b81..973dc7b7e 100644 --- a/code/sdk/application/wearable/service/msg_center/src/notify/drinkReminder_notification.cpp +++ b/code/sdk/application/wearable/service/msg_center/src/notify/drinkReminder_notification.cpp @@ -3,6 +3,7 @@ #include "components/ui_button.h" #include "components/ui_image_view.h" #include "components/ui_label_ext.h" +#include "components/ui_scroll_view.h" #ifdef FD230 #include "ui_resource_string.h" #endif @@ -22,6 +23,7 @@ namespace OHOS { UIViewGroup *DrinkReminderGroupView{nullptr}; + UIScrollView *DrinkReminderScrollView{nullptr}; UILabelExt *DrinkReminderTitleLabel{nullptr}; // 标题: 喝水提醒 UIImageView *DrinkReminderImage{nullptr}; UILabelExt *DrinkReminderNoteLabel{nullptr}; // 喝水提醒note @@ -93,7 +95,7 @@ namespace OHOS { /*亮屏加震动*/ uapi_set_screen_on_api(); - if(true != ConfigModel::GetInstance()->GetDnotdisturb() && (!uapi_sleep_mode_flag_get())) + if (true != ConfigModel::GetInstance()->GetDnotdisturb() && (!uapi_sleep_mode_flag_get())) { // uapi_vibrationModeSet(ConfigModel::GetInstance()->GetVibrationReminder()); ui_api_vibrate_once_func(); @@ -123,6 +125,28 @@ namespace OHOS return nullptr; } DrinkReminderGroupView->SetOnDragListener(dragListener); + /* -------------------------------------------------------------------------- */ + if (DrinkReminderScrollView == nullptr) + { + DrinkReminderScrollView = new UIScrollView(); + if (DrinkReminderScrollView == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "DrinkReminderScrollView new fail"); + return nullptr; + } + } + DrinkReminderScrollView->SetPosition(0, 0, 466, 466); + DrinkReminderScrollView->SetThrowDrag(true); + DrinkReminderScrollView->SetDraggable(true); + DrinkReminderScrollView->SetTouchable(true); + DrinkReminderScrollView->SetReboundSize(30); + DrinkReminderScrollView->SetScrollBlankSize(30); + DrinkReminderScrollView->SetSwipeACCLevel(800); // 800: compensation distance + DrinkReminderScrollView->SetDragACCLevel(5); // 5: drag acceleration + DrinkReminderScrollView->SetMaxScrollDistance(1000); + DrinkReminderScrollView->SetDirection(UIScrollView::VERTICAL); + DrinkReminderScrollView->RequestFocus(); + DrinkReminderScrollView->SetRotateFactor(1.0); /* ------------------------- DrinkReminderTitleLabel ------------------------ */ DrinkReminderTitleLabel = new UILabelExt(); if (DrinkReminderTitleLabel == nullptr) @@ -204,11 +228,12 @@ namespace OHOS DrinkReminderLabel->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER); DrinkReminderLabel->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30); /* ----------------------------------- Add ---------------------------------- */ - DrinkReminderGroupView->Add(DrinkReminderTitleLabel); - DrinkReminderGroupView->Add(DrinkReminderImage); - DrinkReminderGroupView->Add(DrinkReminderNoteLabel); - DrinkReminderGroupView->Add(DrinkReminderButton); - DrinkReminderGroupView->Add(DrinkReminderLabel); + DrinkReminderScrollView->Add(DrinkReminderTitleLabel); + DrinkReminderScrollView->Add(DrinkReminderImage); + DrinkReminderScrollView->Add(DrinkReminderNoteLabel); + DrinkReminderScrollView->Add(DrinkReminderButton); + DrinkReminderScrollView->Add(DrinkReminderLabel); + DrinkReminderGroupView->Add(DrinkReminderScrollView); /* -------------------------------------------------------------------------- */ if (true != OHOS::ConfigModel::GetInstance()->GetDnotdisturb() && (!uapi_sleep_mode_flag_get())) @@ -217,11 +242,11 @@ namespace OHOS } ScreenTurnOn(10 * 1000); // 亮屏操作 10秒关闭 - /* -------------------------------------------------------------------------- */ + /* -------------------------------------------------------------------------- */ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Create DrinkReminderView succeed!!"); } - + NotificationManager::GetInstance()->RegisterNotifyCleanupFunction(FreeDrinkReminderView); return DrinkReminderGroupView; } @@ -234,21 +259,28 @@ namespace OHOS { DrinkReminderGroupView->RemoveAll(); - delete DrinkReminderTitleLabel; - DrinkReminderTitleLabel = nullptr; + if (DrinkReminderScrollView != nullptr) + { + DrinkReminderScrollView->RemoveAll(); + delete DrinkReminderTitleLabel; + DrinkReminderTitleLabel = nullptr; - delete DrinkReminderImage; - DrinkReminderImage = nullptr; + delete DrinkReminderImage; + DrinkReminderImage = nullptr; - delete DrinkReminderNoteLabel; - DrinkReminderNoteLabel = nullptr; + delete DrinkReminderNoteLabel; + DrinkReminderNoteLabel = nullptr; - delete DrinkReminderButton; - DrinkReminderButton = nullptr; + delete DrinkReminderButton; + DrinkReminderButton = nullptr; - delete DrinkReminderLabel; - DrinkReminderLabel = nullptr; + delete DrinkReminderLabel; + DrinkReminderLabel = nullptr; + DrinkReminderScrollView->ClearFocus(); + delete DrinkReminderScrollView; + DrinkReminderScrollView = nullptr; + } RootView::GetInstance()->Remove(DrinkReminderGroupView); delete DrinkReminderGroupView; DrinkReminderGroupView = nullptr; diff --git a/code/sdk/application/wearable/service/msg_center/src/notify/pairing_notification.cpp b/code/sdk/application/wearable/service/msg_center/src/notify/pairing_notification.cpp index 4ac3cc243..73f2309a9 100644 --- a/code/sdk/application/wearable/service/msg_center/src/notify/pairing_notification.cpp +++ b/code/sdk/application/wearable/service/msg_center/src/notify/pairing_notification.cpp @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-03-22 10:04:36 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-10-09 10:08:29 + * @LastEditTime: 2024-10-12 11:31:08 * @FilePath: /FD230/code/sdk/application/wearable/service/msg_center/src/notify/pairing_notification.cpp */ #include "notification_manager.h" @@ -271,6 +271,8 @@ namespace OHOS DeviceBindingScrollView->SetDragACCLevel(5); // 5: drag acceleration DeviceBindingScrollView->SetMaxScrollDistance(1000); DeviceBindingScrollView->SetDirection(UIScrollView::VERTICAL); + DeviceBindingScrollView->RequestFocus(); + DeviceBindingScrollView->SetRotateFactor(1.0); /* ----------------------- DeviceBindingViewTitleLabel ---------------------- */ if (DeviceBindingViewTitleLabel == nullptr) { @@ -436,6 +438,8 @@ namespace OHOS DeviceUnBindingScrollView->SetDragACCLevel(5); // 5: drag acceleration DeviceUnBindingScrollView->SetMaxScrollDistance(1000); DeviceUnBindingScrollView->SetDirection(UIScrollView::VERTICAL); + DeviceUnBindingScrollView->RequestFocus(); + DeviceUnBindingScrollView->SetRotateFactor(1.0); /* ----------------------- DeviceUnBindingAnimatorView ---------------------- */ UnBindPathsArray = CreateImageInfoArray(UNBIND_IMAGE_SRC, UNBIND_IMAGE_ANIMATOR_VIEW_NUM_FRAMES); if (DeviceUnBindingAnimatorView == nullptr) @@ -598,6 +602,8 @@ namespace OHOS DeviceUnbindingRequestScrollView->SetDragACCLevel(5); // 5: drag acceleration DeviceUnbindingRequestScrollView->SetMaxScrollDistance(1000); DeviceUnbindingRequestScrollView->SetDirection(UIScrollView::VERTICAL); + DeviceUnbindingRequestScrollView->RequestFocus(); + DeviceUnbindingRequestScrollView->SetRotateFactor(1.0); /* ------------------ DeviceUnbindingRequestViewTitleLabel ------------------ */ if (DeviceUnbindingRequestViewTitleLabel == nullptr) { @@ -783,6 +789,7 @@ namespace OHOS delete DeviceBindingButtonOK; DeviceBindingButtonOK = nullptr; } + DeviceBindingScrollView->ClearFocus(); delete DeviceBindingScrollView; DeviceBindingScrollView = nullptr; } @@ -834,6 +841,7 @@ namespace OHOS delete DeviceUnBindingButtonOK; DeviceUnBindingButtonOK = nullptr; } + DeviceUnBindingScrollView->ClearFocus(); delete DeviceUnBindingScrollView; DeviceUnBindingScrollView = nullptr; } @@ -886,6 +894,7 @@ namespace OHOS delete DeviceUnbindingRequestButtonCancel; DeviceUnbindingRequestButtonCancel = nullptr; } + DeviceUnbindingRequestScrollView->ClearFocus(); delete DeviceUnbindingRequestScrollView; DeviceUnbindingRequestScrollView = nullptr; } diff --git a/code/sdk/application/wearable/service/msg_center/src/notify/sedentaryReminder_notification.cpp b/code/sdk/application/wearable/service/msg_center/src/notify/sedentaryReminder_notification.cpp index 881a50828..7e493f7b4 100644 --- a/code/sdk/application/wearable/service/msg_center/src/notify/sedentaryReminder_notification.cpp +++ b/code/sdk/application/wearable/service/msg_center/src/notify/sedentaryReminder_notification.cpp @@ -3,6 +3,7 @@ #include "components/ui_button.h" #include "components/ui_image_view.h" #include "components/ui_label_ext.h" +#include "components/ui_scroll_view.h" #ifdef FD230 #include "ui_resource_string.h" #endif @@ -19,6 +20,7 @@ namespace OHOS { UIViewGroup *SedentaryReminderGroupView{nullptr}; + UIScrollView *SedentaryReminderScrollView{nullptr}; UILabelExt *SedentaryReminderTitleLabel{nullptr}; // 标题: 久坐提醒 UIImageView *SedentaryReminderImage{nullptr}; UILabelExt *SedentaryReminderNoteLabel{nullptr}; // 久坐提醒note @@ -120,7 +122,7 @@ namespace OHOS /*设置喝水提醒note上的提醒时间*/ void SedentaryReminderViewEventListener::SetSedentaryReminderNoteIntervalTime(int interval) { - UpdateNoteLabelText(SedentaryReminderNoteLabel,std::to_string(interval),STR_SEDENTARY_REMINDER_NOTE); + UpdateNoteLabelText(SedentaryReminderNoteLabel, std::to_string(interval), STR_SEDENTARY_REMINDER_NOTE); } // 获取久坐提醒时间间隔 @@ -153,6 +155,28 @@ namespace OHOS return nullptr; } SedentaryReminderGroupView->SetOnDragListener(dragListener); + /* -------------------------------------------------------------------------- */ + if (SedentaryReminderScrollView == nullptr) + { + SedentaryReminderScrollView = new UIScrollView(); + if (SedentaryReminderScrollView == nullptr) + { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SedentaryReminderScrollView new fail"); + return nullptr; + } + } + SedentaryReminderScrollView->SetPosition(0, 0, 466, 466); + SedentaryReminderScrollView->SetThrowDrag(true); + SedentaryReminderScrollView->SetDraggable(true); + SedentaryReminderScrollView->SetTouchable(true); + SedentaryReminderScrollView->SetReboundSize(30); + SedentaryReminderScrollView->SetScrollBlankSize(30); + SedentaryReminderScrollView->SetSwipeACCLevel(800); // 800: compensation distance + SedentaryReminderScrollView->SetDragACCLevel(5); // 5: drag acceleration + SedentaryReminderScrollView->SetMaxScrollDistance(1000); + SedentaryReminderScrollView->SetDirection(UIScrollView::VERTICAL); + SedentaryReminderScrollView->RequestFocus(); + SedentaryReminderScrollView->SetRotateFactor(1.0); /* ------------------------- SedentaryReminderTitleLabel ------------------------ */ SedentaryReminderTitleLabel = new UILabelExt(); if (SedentaryReminderTitleLabel == nullptr) @@ -238,16 +262,17 @@ namespace OHOS SedentaryReminderLabel->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER); SedentaryReminderLabel->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30); /* ----------------------------------- Add ---------------------------------- */ - SedentaryReminderGroupView->Add(SedentaryReminderTitleLabel); - SedentaryReminderGroupView->Add(SedentaryReminderImage); - SedentaryReminderGroupView->Add(SedentaryReminderNoteLabel); - SedentaryReminderGroupView->Add(SedentaryReminderButton); - SedentaryReminderGroupView->Add(SedentaryReminderLabel); + SedentaryReminderScrollView->Add(SedentaryReminderTitleLabel); + SedentaryReminderScrollView->Add(SedentaryReminderImage); + SedentaryReminderScrollView->Add(SedentaryReminderNoteLabel); + SedentaryReminderScrollView->Add(SedentaryReminderButton); + SedentaryReminderScrollView->Add(SedentaryReminderLabel); + SedentaryReminderGroupView->Add(SedentaryReminderScrollView); WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "Create SedentaryReminderView succeed!!"); } /* -------------------------------------------------------------------------- */ - ScreenTurnOn(10*1000);//显示时长10s + ScreenTurnOn(10 * 1000); // 显示时长10s ui_api_vibrate_once_func(); /* -------------------------------------------------------------------------- */ NotificationManager::GetInstance()->RegisterNotifyCleanupFunction(FreeSedentaryReminderView); @@ -261,22 +286,28 @@ namespace OHOS if (SedentaryReminderGroupView != nullptr) { SedentaryReminderGroupView->RemoveAll(); + if (SedentaryReminderScrollView != nullptr) + { + SedentaryReminderScrollView->RemoveAll(); + delete SedentaryReminderTitleLabel; + SedentaryReminderTitleLabel = nullptr; - delete SedentaryReminderTitleLabel; - SedentaryReminderTitleLabel = nullptr; - - delete SedentaryReminderImage; - SedentaryReminderImage = nullptr; - - delete SedentaryReminderNoteLabel; - SedentaryReminderNoteLabel = nullptr; + delete SedentaryReminderImage; + SedentaryReminderImage = nullptr; - delete SedentaryReminderButton; - SedentaryReminderButton = nullptr; + delete SedentaryReminderNoteLabel; + SedentaryReminderNoteLabel = nullptr; - delete SedentaryReminderLabel; - SedentaryReminderLabel = nullptr; + delete SedentaryReminderButton; + SedentaryReminderButton = nullptr; + delete SedentaryReminderLabel; + SedentaryReminderLabel = nullptr; + + SedentaryReminderScrollView->ClearFocus(); + delete SedentaryReminderScrollView; + SedentaryReminderScrollView = nullptr; + } RootView::GetInstance()->Remove(SedentaryReminderGroupView); delete SedentaryReminderGroupView; SedentaryReminderGroupView = nullptr; -- 2.17.1