From 53e39afe51fe2c3dbd2f27fcf0bff1134354159d Mon Sep 17 00:00:00 2001 From: xue <2144439972@qq.com> Date: Sat, 28 Feb 2026 14:23:12 +0800 Subject: [PATCH] =?utf8?q?=E5=BC=80=E5=A7=8B=E8=BF=90=E5=8A=A8=E7=9B=B4?= =?utf8?q?=E6=8E=A5=E6=9B=B4=E6=96=B0=E6=97=B6=E9=97=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- .../training_card/include/TrainingDataView.h | 3 +- .../training_card/src/TrainingDataView.cpp | 28 +++++++++++++++++-- 2 files changed, 28 insertions(+), 3 deletions(-) diff --git a/code/sdk/application/wearable/fd272/nativeapp/nativeui/traing/training_card/include/TrainingDataView.h b/code/sdk/application/wearable/fd272/nativeapp/nativeui/traing/training_card/include/TrainingDataView.h index 45a6ea1f4..318593a45 100644 --- a/code/sdk/application/wearable/fd272/nativeapp/nativeui/traing/training_card/include/TrainingDataView.h +++ b/code/sdk/application/wearable/fd272/nativeapp/nativeui/traing/training_card/include/TrainingDataView.h @@ -59,7 +59,8 @@ private: UIView::OnDragListener *draglistener{nullptr}; TrainingDataView(TrainingDataView &&) = delete; TrainingDataView &operator=(TrainingDataView &&) = delete; - + std::string stringtime; + std::string GetCurrentTime(); UILabelExt *curtimelabel = nullptr; // 当前时间 UILabelExt *sportlabel = nullptr; // 运动项目名称 diff --git a/code/sdk/application/wearable/fd272/nativeapp/nativeui/traing/training_card/src/TrainingDataView.cpp b/code/sdk/application/wearable/fd272/nativeapp/nativeui/traing/training_card/src/TrainingDataView.cpp index aaccfec16..335c75569 100644 --- a/code/sdk/application/wearable/fd272/nativeapp/nativeui/traing/training_card/src/TrainingDataView.cpp +++ b/code/sdk/application/wearable/fd272/nativeapp/nativeui/traing/training_card/src/TrainingDataView.cpp @@ -28,6 +28,8 @@ static TrainingDataView *g_pTrainingDataView{nullptr}; TrainingDataView::TrainingDataView() { SetPosition(0, 0, HORIZONTAL_RESOLUTION, VERTICAL_RESOLUTION); g_pTrainingDataView = this; + + } TrainingDataView::~TrainingDataView() { @@ -39,8 +41,30 @@ TrainingDataView *TrainingDataView::GetInstance() { return g_pTrainingDataView; } -/* InitView:初始化界面*/ +std::string TrainingDataView::GetCurrentTime() { + // 获取当前时间 + struct tm pTM; + time_t seconds; + time(&seconds); + localtime_r(&seconds, &pTM); + + // 解析时间 + int hour = pTM.tm_hour; + //需要判断显示的格式 + if (uapi_dev_runtime_get_time_hour_show_model() == 12) { + if (pTM.tm_hour > 12) + hour = pTM.tm_hour - 12; + } + + int minute = pTM.tm_min; + + // 将时间和日期转换为字符串 + return (hour < 10 ? "0" : "") + std::to_string(hour) + ":" + + (minute < 10 ? "0" : "") + std::to_string(minute); +} + bool TrainingDataView ::InitPage() { + stringtime = GetCurrentTime(); // 初始化Image InitImageView(image_progress, 13, 13, 440, 386, "image1", PROGRESS_IMAGE); InitImageView(image_heart, 88, 295, 50, 50, "image2", SPORT_HEARTRATE_IMAGE); @@ -77,7 +101,7 @@ bool TrainingDataView ::InitPage() { DEFAULT_VECTOR_FONT_FILENAME, 30); sportlabel->SetTextColor(Color::Gray()); //数字统一使用DEFAULT_VECTOR_FONT_FILENAME_EN - InitLabel(curtimelabel, 155, 60, 150, 50, "label1", "23:54", + InitLabel(curtimelabel, 155, 60, 150, 50, "label1", stringtime.c_str(), DEFAULT_VECTOR_FONT_FILENAME_EN, 40); InitLabel(timerlabel, 0, 163, 466, 150, "label3", "00:00:00", DEFAULT_VECTOR_FONT_FILENAME_EN, 80); -- 2.17.1