From a064616c320a520d1856a564693b55f233d151ae Mon Sep 17 00:00:00 2001 From: luozheng <1732036298@qq.com> Date: Sat, 7 Dec 2024 17:19:08 +0800 Subject: [PATCH] =?utf8?q?=E9=9F=B3=E4=B9=90=E6=92=AD=E6=94=BE=E5=99=A8?= =?utf8?q?=EF=BC=9A=201.=E8=A7=A3=E5=86=B3applist=E9=9F=B3=E4=B9=90?= =?utf8?q?=E5=BA=94=E7=94=A8=E7=82=B9=E5=87=BB=E6=92=AD=E6=94=BE=E6=8C=89?= =?utf8?q?=E9=92=AE=E6=92=AD=E6=94=BE=E9=9F=B3=E4=B9=90=E5=90=8E=EF=BC=8C?= =?utf8?q?=E9=80=80=E5=87=BA=E7=95=8C=E9=9D=A2=E5=86=8D=E8=BF=9B=E5=85=A5?= =?utf8?q?=EF=BC=8C=E6=8C=89=E9=92=AE=E5=8F=98=E6=88=90=E6=9A=82=E5=81=9C?= =?utf8?q?=E7=8A=B6=E6=80=81=EF=BC=88=E9=80=9A=E8=BF=87=E8=AE=BE=E7=BD=AE?= =?utf8?q?=E6=8C=89=E9=92=AE=E5=88=9D=E5=80=BC=E8=A7=A3=E5=86=B3=EF=BC=89?= =?utf8?q?=202.=E8=A7=A3=E5=86=B3applist=E9=9F=B3=E4=B9=90=E5=BA=94?= =?utf8?q?=E7=94=A8=E7=82=B9=E5=87=BB=E6=92=AD=E6=94=BE=E6=8C=89=E9=92=AE?= =?utf8?q?=E6=92=AD=E6=94=BE=E9=9F=B3=E4=B9=90=E5=90=8E=EF=BC=8C=E9=80=80?= =?utf8?q?=E5=87=BA=E7=95=8C=E9=9D=A2=E5=86=8D=E8=BF=9B=E5=85=A5=EF=BC=8C?= =?utf8?q?=E9=9F=B3=E4=B9=90=E8=BF=9B=E5=BA=A6=E6=9D=A1=E6=9C=AA=E5=8F=8A?= =?utf8?q?=E6=97=B6=E6=9B=B4=E6=96=B0=E9=97=AE=E9=A2=98=EF=BC=88=E9=80=9A?= =?utf8?q?=E8=BF=87=E8=AE=BE=E7=BD=AE=E8=BF=9B=E5=BA=A6=E6=9D=A1=E5=88=9D?= =?utf8?q?=E5=80=BC=E8=A7=A3=E5=86=B3=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../nativeui/player/include/PlayersModel.h | 3 +- .../nativeui/player/include/PlayersView.h | 3 +- .../nativeui/player/src/PlayersModel.cpp | 33 +++++++++++-------- .../nativeui/player/src/PlayersView.cpp | 10 ++++++ 4 files changed, 34 insertions(+), 15 deletions(-) diff --git a/code/sdk/application/wearable/fd230app/nativeui/player/include/PlayersModel.h b/code/sdk/application/wearable/fd230app/nativeui/player/include/PlayersModel.h index 9710ac9da..fc2a79257 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/player/include/PlayersModel.h +++ b/code/sdk/application/wearable/fd230app/nativeui/player/include/PlayersModel.h @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-08-05 15:20:03 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-12-05 21:56:01 + * @LastEditTime: 2024-12-07 17:03:05 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/player/include/PlayersModel.h */ @@ -127,6 +127,7 @@ public: void showIdToMusicNameMapData(void); int getPreShowView(void); void setPreShowView(int index); + void updatePlayProgress(); // /* -------------------------------------------------------------------------- */ private: bool phonePlayButtonState{false}; diff --git a/code/sdk/application/wearable/fd230app/nativeui/player/include/PlayersView.h b/code/sdk/application/wearable/fd230app/nativeui/player/include/PlayersView.h index febe0e36e..6595ceb4b 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/player/include/PlayersView.h +++ b/code/sdk/application/wearable/fd230app/nativeui/player/include/PlayersView.h @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-08-05 15:20:03 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-12-05 20:38:46 + * @LastEditTime: 2024-12-07 17:06:06 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/player/include/PlayersView.h */ @@ -107,6 +107,7 @@ namespace OHOS void OnClickBackKeyToMainMusicPlayerView(void); void StopCurPlayingMusic(); void UpdateVolumeValue(void); + void initPlayProgress(void); VolumeSettingView *GetVolumeSettingView(); PlayerListDelSongView *GetPlayerListDelSongView(); diff --git a/code/sdk/application/wearable/fd230app/nativeui/player/src/PlayersModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/player/src/PlayersModel.cpp index 7dd2ad83f..bf5da77ba 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/player/src/PlayersModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/player/src/PlayersModel.cpp @@ -901,6 +901,25 @@ bool PlayersModel::GetCurrentMusicIsPlaying(void) } } + //更新音乐进度条 + void PlayersModel::updatePlayProgress() + { + // 获取当前播放时间 + PlayersModel::GetInstance()->GetPlayerCtr()->GetCurrentTime(playerCurrentTime_); + // 获取音乐总时长 + PlayersModel::GetInstance()->GetDuration(playerMusicDuration_); + if (playerMusicDuration_!= 0) { + playerProgressValue_ = (playerCurrentTime_ * 100) / playerMusicDuration_; + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "playerProgressValue_ %lld", playerProgressValue_); + } else { + playerProgressValue_ = 0; // 100: max progress value + } + // 设置圆形进度条进度 + PlayersModel::GetInstance()->SetCircleProgress(playerProgressValue_); + // 设置播放进度显示 + PlayersPresenter::GetInstance()->SetPlaybackProgress(playerProgressValue_); + } + void PlayersModel::SetCircleProgress() { PlayersView *playersView = PlayersView::GetInstance(); @@ -932,19 +951,7 @@ bool PlayersModel::GetCurrentMusicIsPlaying(void) } if (state_ == UICheckBox::UICheckBoxState::SELECTED) { - PlayersModel::GetInstance()->GetPlayerCtr()->GetCurrentTime(playerCurrentTime_); - PlayersModel::GetInstance()->GetDuration(playerMusicDuration_); - if (playerMusicDuration_ != 0) - { - playerProgressValue_ = (playerCurrentTime_ * 100) / playerMusicDuration_; - WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "playerProgressValue_ %lld", playerProgressValue_); - } - else - { - playerProgressValue_ = 0; // 100: max progress value - } - PlayersModel::GetInstance()->SetCircleProgress(playerProgressValue_); - PlayersPresenter::GetInstance()->SetPlaybackProgress(playerProgressValue_); + updatePlayProgress();//更新音乐进度条 } } else //如果当前为手机音乐 diff --git a/code/sdk/application/wearable/fd230app/nativeui/player/src/PlayersView.cpp b/code/sdk/application/wearable/fd230app/nativeui/player/src/PlayersView.cpp index aa2a8ee43..1c99bb55a 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/player/src/PlayersView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/player/src/PlayersView.cpp @@ -664,6 +664,9 @@ namespace OHOS } } play_or_pause_Button->SetPosition(195, 195, 80, 80); + uint8_t state = UICheckBox::UICheckBoxState::MAX_STATUS_NUM; + bool isplayingflag = PlayersModel::GetInstance()->GetCurrentMusicIsPlaying();//获取当前音乐是否是在播放中 + play_or_pause_Button->SetState(isplayingflag?UICheckBox::UICheckBoxState::SELECTED:UICheckBox::UICheckBoxState::UNSELECTED); play_or_pause_Button->SetOnClickListener(clickListener); return true; } @@ -876,6 +879,12 @@ namespace OHOS } } + //初始化音乐播放器的进度条 + void PlayersView::initPlayProgress(void) + { + PlayersModel::GetInstance()->updatePlayProgress(); + } + /// @brief 设置音乐播放模式按钮是否可点击 /// @param musicSourceType 音乐来源类型 false:手表音乐 true 手机音乐 /// @param phoneMusicConnectStatus 手机音乐连接状态 @@ -1047,6 +1056,7 @@ namespace OHOS } /* -------------------------------------------------------------------------- */ UpdatePlayerView(); + initPlayProgress(); /* -------------------------------------------------------------------------- */ // PlayersListGroup::GetInstance()->SetUpListCase(); -- 2.17.1