From: luozheng <1732036298@qq.com> Date: Fri, 23 Aug 2024 03:53:06 +0000 (+0800) Subject: 优化下拉星期显示,若当前系统为中文则显示中文,否则用星期的缩写表示 X-Git-Tag: release_V1.2.70_20241020_135402~549^2~40 X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=64d06c1131a24be39120099d514d34a89bd6cb63;p=mirrors%2FFD230.git 优化下拉星期显示,若当前系统为中文则显示中文,否则用星期的缩写表示 如:ch:星期五 other:Fri --- diff --git a/code/sdk/application/wearable/fd230app/nativeui/main/include/MainPresenterSample.h b/code/sdk/application/wearable/fd230app/nativeui/main/include/MainPresenterSample.h index a815fde55..e5f831402 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/main/include/MainPresenterSample.h +++ b/code/sdk/application/wearable/fd230app/nativeui/main/include/MainPresenterSample.h @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-03-01 15:10:34 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-06-29 11:19:40 + * @LastEditTime: 2024-08-23 11:41:32 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/main/include/MainPresenterSample.h */ @@ -78,6 +78,7 @@ namespace OHOS void InitDialSettings(void); DialSetting &GetDialSetting(); void UpdataTime(); + uint32_t GetWeekStr(char *p_week); void UpdataBaseData(); void PullUpDown_StartTimer(uint32_t interval); void PullUpDown_StopTimer(void); diff --git a/code/sdk/application/wearable/fd230app/nativeui/main/src/MainPresenterSample.cpp b/code/sdk/application/wearable/fd230app/nativeui/main/src/MainPresenterSample.cpp index 520899c6c..eb28df018 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/main/src/MainPresenterSample.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/main/src/MainPresenterSample.cpp @@ -38,6 +38,7 @@ #include "DialViewGroup.h" #endif #include "ui_service.h" +#include "time.h" #define TESTCHECK 0 namespace OHOS { @@ -491,6 +492,29 @@ namespace OHOS // free(timeStr); } + static const char *weekDays_ch[] = {"星期天", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"}; + static const char *weekDays_other[] = {"Sun", "Mon", "Tue", "Wed", "Thur", "Fri", "Sat"}; + uint32_t MainPresenterSample::GetWeekStr(char *p_week) + { + time_t currtime; + struct tm *timeinfo; + time(&currtime); + timeinfo = localtime(&currtime); + + // 获取星期信息 + int language = ConfigModel::GetInstance()->GetLanguage(); + if(language == 0) + { + strcpy(p_week, weekDays_ch[timeinfo->tm_wday]); + } + else + { + strcpy(p_week, weekDays_other[timeinfo->tm_wday]); + } + + return ERRCODE_SUCC; // 假设成功获取星期信息 + } + void MainPresenterSample::UpdataBaseData() { WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "PullUpDownView::UpdataBaseData"); @@ -513,7 +537,7 @@ namespace OHOS } // 解析星期信息 char *weekStr = (char *)malloc(10); - if (uapi_get_WeekStr(weekStr) != ERRCODE_SUCC) + if (GetWeekStr(weekStr) != ERRCODE_SUCC) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Failed to get week information"); free(dateStr); diff --git a/code/sdk/application/wearable/fd230app/nativeui/main/src/PullUpDownView.cpp b/code/sdk/application/wearable/fd230app/nativeui/main/src/PullUpDownView.cpp index 37d1ae048..10b0c7cb5 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/main/src/PullUpDownView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/main/src/PullUpDownView.cpp @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-06-26 18:14:24 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-08-23 10:37:57 + * @LastEditTime: 2024-08-23 11:38:09 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/main/src/PullUpDownView.cpp */ @@ -458,11 +458,11 @@ namespace OHOS WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "showDateAndWeekLabel new fail"); return; } - showDateAndWeekLabel->SetPosition(128, 130, 210, 30); + showDateAndWeekLabel->SetPosition(83, 130, 300, 35); showDateAndWeekLabel->SetStyle(STYLE_TEXT_FONT, 30); showDateAndWeekLabel->SetStyle(STYLE_LINE_HEIGHT, 35); showDateAndWeekLabel->SetTextColor(Color::GetColorFromRGBA(0xaa, 0xaa, 0xaa, 0xff)); - showDateAndWeekLabel->SetLineBreakMode(UILabel::LINE_BREAK_ADAPT); + showDateAndWeekLabel->SetLineBreakMode(UILabel::LINE_BREAK_OSCILLATION); showDateAndWeekLabel->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER); showDateAndWeekLabel->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30); group[DROPDOWNVIEW]->Add(showDateAndWeekLabel);