clock_gettime(CLOCK_MONOTONIC, &Systime);
int SystemTime = Systime.tv_sec;
printf("--getSystemTime::%d--\n", SystemTime);
- clock_settime(CLOCK_MONOTONIC, &pTM);
+ //clock_settime(CLOCK_MONOTONIC, &pTM);
#endif
// 获取系统时间
time(&seconds);
//printf("value:%d\n", value);
//根据电池电量值选择相应的进度条前景图片
#endif
- char *progress1ForeImageSrc = nullptr;
- char *progress1BackImageSrc = nullptr;
+ const char *progress1ForeImageSrc = nullptr;
+ const char *progress1BackImageSrc = nullptr;
if (value <= 10)
{
progress1ForeImageSrc = "/user/res/Battery/Battery_Limit.bin"; // 低电量图片路径
+/***
+ * @Author: Caisking 3449750381@qq.com
+ * @Date: 2024-01-18 11:03:28
+ * @LastEditors: Caisking 3449750381@qq.com
+ * @LastEditTime: 2024-01-20 17:53:18
+ * @FilePath: /FD230/code/sdk/application/wearable/nativeapp/nativeui/main/include/PullUpDownView.h
+ * @Description:
+ * @
+ * @Copyright (c) 2024 by Caisking , All Rights Reserved.
+ */
/*
* Copyright (c) CompanyNameMagicTag 2021-2021. All rights reserved.
* Description: WeekStep
uint8_t value = 0;
value = battery_get_voltage(&voltage);
// 根据电池电量值选择相应的进度条前景图片
- char *progress1ForeImageSrc = nullptr;
- char *progress1BackImageSrc = nullptr;
+ const char *progress1ForeImageSrc = nullptr;
+ const char *progress1BackImageSrc = nullptr;
if (value <= 10)
{
progress1ForeImageSrc = "/user/res/Battery/Battery_Limit.bin"; // 低电量图片路径
constexpr int16_t BLUETOOTHCONNECTSTATUS_BUTTON_X = 279;
constexpr int16_t BLUETOOTHCONNECTSTATUS_BUTTON_Y = 369;
/* -------------------------------------------------------------------------- */
+ std::string getWeekString(int wday)
+ {
+ std::string weekDays[] = {"星期天", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"};
+ return weekDays[wday];
+ }
+ /* -------------------------------------------------------------------------- */
static PullUpDownView *g_pPullUpDownView = nullptr;
PullUpDownView::PullUpDownView()
{
/// @param void
void PullUpDownView::InitTimeDateWeekLabelAndConnectedStatusImage(void)
{
+ /* -------------------------------------------------------------------------- */
+ // 将时间字段转换为字符串
+ struct tm pTM;
+ time_t seconds;
+ time(&seconds);
+ localtime_r(&seconds, &pTM);
+ // 解析
+ int hour = pTM.tm_hour;
+ int minute = pTM.tm_min;
+ std::string yearStr = std::to_string(pTM.tm_year + 1900); // 年份需要加上 1900
+ std::string monthStr = (pTM.tm_mon + 1 < 10) ? "0" + std::to_string(pTM.tm_mon + 1) : std::to_string(pTM.tm_mon + 1); // 月份是从 0 开始的,需要加上 1
+ std::string weekStr = getWeekString(pTM.tm_wday); // 解析星期
+ // 将小时和分钟转换为字符串,并更新显示
+ std::string stringtime = (hour < 10 ? "0" : "") + std::to_string(hour) + ":" + (minute < 10 ? "0" : "") + std::to_string(minute);
+ // 连接成日期字符串
+ std::string dayStr = (pTM.tm_mday < 10) ? "0" + std::to_string(pTM.tm_mday) : std::to_string(pTM.tm_mday);
+ std::string dateStr = monthStr + "月" + dayStr + "日";
+
+ /* -------------------------------------------------------------------------- */
+
bool ConnectedStatus = false;
/* -------------------------------- 显示手机连接状态 -------------------------------- */
showPhoneConnectedStatus = new UIImageView();
showTimeLabel->SetPosition(TIME_LABEL_X, TIME_LABEL_Y);
showTimeLabel->SetStyle(STYLE_TEXT_FONT, 50);
showTimeLabel->SetStyle(STYLE_LINE_HEIGHT, 59);
- showTimeLabel->SetText("23:54");
+ showTimeLabel->SetText(stringtime.c_str());
showTimeLabel->SetLineBreakMode(UILabel::LINE_BREAK_ADAPT);
showTimeLabel->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);
showTimeLabel->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 50);
showDateLabel->SetPosition(DATE_LABEL_X, DATE_LABEL_Y);
showDateLabel->SetStyle(STYLE_TEXT_FONT, 30);
showDateLabel->SetStyle(STYLE_LINE_HEIGHT, 35);
- showDateLabel->SetText("5月16号");
+ showDateLabel->SetText(dateStr.c_str());
showDateLabel->SetLineBreakMode(UILabel::LINE_BREAK_ADAPT);
showDateLabel->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);
showDateLabel->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30);
showWeekLabel->SetPosition(WEEK_LABEL_X, WEEK_LABEL_Y);
showWeekLabel->SetStyle(STYLE_TEXT_FONT, 30);
showWeekLabel->SetStyle(STYLE_LINE_HEIGHT, 35);
- showWeekLabel->SetText("星期一");
+ showWeekLabel->SetText(weekStr.c_str());
showWeekLabel->SetLineBreakMode(UILabel::LINE_BREAK_ADAPT);
showWeekLabel->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);
showWeekLabel->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30);