From: luozheng <1732036298@qq.com> Date: Fri, 13 Sep 2024 08:26:09 +0000 (+0800) Subject: 闹钟界面适配多国语言 X-Git-Tag: release_V1.2.70_20241020_135402~485^2^2~6 X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=4635c672f9f0217558d7c5d872268555e6407c29;p=mirrors%2FFD230.git 闹钟界面适配多国语言 --- diff --git a/code/sdk/application/wearable/fd230app/nativeui/alarm/include/AlarmConfigView.h b/code/sdk/application/wearable/fd230app/nativeui/alarm/include/AlarmConfigView.h index 700111186..7a4b22bb7 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/alarm/include/AlarmConfigView.h +++ b/code/sdk/application/wearable/fd230app/nativeui/alarm/include/AlarmConfigView.h @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-09-02 20:04:12 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-09-10 16:31:01 + * @LastEditTime: 2024-09-13 15:21:58 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/alarm/include/AlarmConfigView.h */ @@ -42,9 +42,9 @@ private: UILabelButtonExt* button1{nullptr}; UILabelButtonExt* button2{nullptr}; UILabelExt *labelTime{nullptr}; - UILabel *labelSetTime{nullptr}; - UILabel *labelDay{nullptr}; - UILabel *labelSetWeek{nullptr}; + UILabelExt *labelSetTime{nullptr}; + UILabelExt *labelDay{nullptr}; + UILabelExt *labelSetWeek{nullptr}; char showtime[12]{0}; }; } // namespace OHOS diff --git a/code/sdk/application/wearable/fd230app/nativeui/alarm/include/AlarmSetWeekView.h b/code/sdk/application/wearable/fd230app/nativeui/alarm/include/AlarmSetWeekView.h index fa667aec4..aae3aa8f0 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/alarm/include/AlarmSetWeekView.h +++ b/code/sdk/application/wearable/fd230app/nativeui/alarm/include/AlarmSetWeekView.h @@ -11,7 +11,7 @@ #include "components/ui_image_view.h" #include "components/ui_label.h" #include "components/ui_label_ext.h" -#include "components/ui_label_button.h" +#include "components/ui_label_button_ext.h" #include "components/ui_scroll_view.h" #include "font/ui_font.h" #include "components/ui_scroll_view.h" @@ -33,14 +33,13 @@ public: void RefreshSetWeek2(uint8_t week); private: UIScrollView *group{nullptr}; - UILabelButton *weekImage{nullptr}; - UILabel *labelRespeat{nullptr}; + UILabelButtonExt *weekImage{nullptr}; + UILabelExt *labelRespeat{nullptr}; UILabelButton *buttonWeek[7]{nullptr}; // 星期一共有7天,因此设置了七个星期的按钮 void CreateWeekButton1(void); void CreateWeekButton2(void); void SetLabelButton(void); - UILabelButton *CreateUILabelButton(const char *buttonText, int16_t x, int16_t y); - UIView *CreateUIView(int16_t x, int16_t y); + UILabelButtonExt *CreateUILabelButton(const char *buttonText1,const char *buttonText2, int16_t x, int16_t y); }; } // namespace OHOS #endif diff --git a/code/sdk/application/wearable/fd230app/nativeui/alarm/src/AlarmConfigView.cpp b/code/sdk/application/wearable/fd230app/nativeui/alarm/src/AlarmConfigView.cpp index 2799c227a..60b91a35c 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/alarm/src/AlarmConfigView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/alarm/src/AlarmConfigView.cpp @@ -12,7 +12,7 @@ #include #include "color.h" #include "ConfigModel.h" - +#include "ui_resource_string.h" namespace OHOS { #define SET_ALARM "编辑闹钟" @@ -141,7 +141,8 @@ namespace OHOS } } editLabel->SetPosition(83, 50, 300, 35); - editLabel->SetText("编辑闹钟"); + // editLabel->SetText("编辑闹钟"); + editLabel->SetTextId(STR_ALARM); editLabel->SetStyle(STYLE_TEXT_FONT, 30); editLabel->SetStyle(STYLE_LINE_HEIGHT, 35); editLabel->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER); @@ -188,7 +189,8 @@ namespace OHOS } } labelSetTime->SetPosition(93, labelTime->GetY() + labelTime->GetHeight(), 250, 35); - labelSetTime->SetText("更改时间"); + // labelSetTime->SetText("更改时间"); + labelSetTime->SetTextId(STR_ALARM_TIME_CHANGE); labelSetTime->SetStyle(STYLE_TEXT_FONT, 30); labelSetTime->SetStyle(STYLE_LINE_HEIGHT, 35); labelSetTime->SetTextColor(Color::GetColorFromRGBA(0x99, 0x99, 0x99, 0xff)); @@ -222,7 +224,8 @@ namespace OHOS } } labelSetWeek->SetPosition(93, labelDay->GetY() + labelDay->GetHeight(), 250, 35); - labelSetWeek->SetText("更改星期"); + // labelSetWeek->SetText("更改星期"); + labelSetWeek->SetTextId(STR_ALARM_WEEK_CHANGE); labelSetWeek->SetStyle(STYLE_TEXT_FONT, 30); labelSetWeek->SetStyle(STYLE_LINE_HEIGHT, 35); labelSetWeek->SetTextColor(Color::GetColorFromRGBA(0x99, 0x99, 0x99, 0xff)); diff --git a/code/sdk/application/wearable/fd230app/nativeui/alarm/src/AlarmMaxClock.cpp b/code/sdk/application/wearable/fd230app/nativeui/alarm/src/AlarmMaxClock.cpp index 696562c2f..160358015 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/alarm/src/AlarmMaxClock.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/alarm/src/AlarmMaxClock.cpp @@ -12,6 +12,7 @@ #include "alarm/include/AlarmPresenter.h" #include "alarm/include/MainAlarmView.h" #include "cmsis_os2.h" +#include "ui_resource_string.h" namespace OHOS { #define MAX_INETERFACES "当前闹钟个数已达上限" @@ -46,11 +47,17 @@ AlarmMaxClock::AlarmMaxClock() AlarmMaxClock::~AlarmMaxClock() { - container->RemoveAll(); - delete labelText; - labelText = nullptr; - delete container; - container = nullptr; + if(container) + { + container->RemoveAll(); + if(labelText) + { + delete labelText; + labelText = nullptr; + } + delete container; + container = nullptr; + } g_AlarmMaxClock = nullptr; WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AlarmMaxClock::~AlarmMaxClock"); } @@ -90,7 +97,7 @@ UIScrollView *AlarmMaxClock::InitAlarmMax(void) } } labelText->SetPosition(83, 236, 360, 35); - labelText->SetText(MAX_INETERFACES);//当前闹钟个数已达上限 + labelText->SetTextId(STR_ALARM_ADD_LIMIT_NOTE);//当前闹钟个数已达上限 labelText->SetStyle(STYLE_TEXT_FONT, 30); labelText->SetStyle(STYLE_LINE_HEIGHT, 35); labelText->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30); diff --git a/code/sdk/application/wearable/fd230app/nativeui/alarm/src/AlarmSetWeekView.cpp b/code/sdk/application/wearable/fd230app/nativeui/alarm/src/AlarmSetWeekView.cpp index d07ae4ded..77aed612a 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/alarm/src/AlarmSetWeekView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/alarm/src/AlarmSetWeekView.cpp @@ -5,10 +5,11 @@ * Create: 2021-09-11 */ -#include "AlarmSetWeekView.h" +#include "alarm/include/AlarmSetWeekView.h" #include "common/screen.h" #include "components/ui_digital_clock.h" - +#include "ui_resource_string.h" +#include "ConfigModel.h" namespace OHOS { // #define MON "星期一" // #define TUE "星期二" @@ -24,6 +25,13 @@ namespace OHOS { #define FRI "五" #define SAT "六" #define SUN "日" +#define MON_EN "Mon" +#define TUE_EN "Tue" +#define WED_EN "Wed" +#define THUR_EN "Thu" +#define FRI_EN "Fri" +#define SAT_EN "Sat" +#define SUN_EN "Sun" #define RESPEAT "重复" #define SURE "确认" @@ -85,17 +93,29 @@ AlarmSetWeekView::AlarmSetWeekView() AlarmSetWeekView::~AlarmSetWeekView() { - group->RemoveAll(); - delete labelRespeat; - labelRespeat = nullptr; - delete weekImage; - weekImage = nullptr; - for (int16_t alarmNum = 0; alarmNum < 7; alarmNum++) { - delete buttonWeek[alarmNum]; - buttonWeek[alarmNum] = nullptr; + if(group) + { + group->RemoveAll(); + if(labelRespeat) + { + delete labelRespeat; + labelRespeat = nullptr; + } + if(weekImage) + { + delete weekImage; + weekImage = nullptr; + } + for (int16_t alarmNum = 0; alarmNum < 7; alarmNum++) { + if(buttonWeek[alarmNum]) + { + delete buttonWeek[alarmNum]; + buttonWeek[alarmNum] = nullptr; + } + } + delete group; + group = nullptr; } - delete group; - group = nullptr; g_pAlarmSetWeekView = nullptr; WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView::~AlarmSetWeekView"); } @@ -105,21 +125,27 @@ AlarmSetWeekView *AlarmSetWeekView::GetInstance(void) return g_pAlarmSetWeekView; } -UILabelButton *AlarmSetWeekView::CreateUILabelButton(const char *buttonText, int16_t x, int16_t y) +UILabelButtonExt *AlarmSetWeekView::CreateUILabelButton(const char *buttonText1,const char *buttonText2, int16_t x, int16_t y) { - if (buttonText == nullptr) { + if (buttonText1 == nullptr || buttonText2 == nullptr) { return nullptr; } - UILabelButton *labelButton = new UILabelButton(); + UILabelButtonExt *labelButton = new UILabelButtonExt(); if (labelButton == nullptr) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new labelButton fail"); return nullptr; } - + int language = ConfigModel::GetInstance()->GetLanguage(); + if(language == 0) + { + labelButton->SetText(buttonText1); + } + else + { + labelButton->SetText(buttonText2); + } labelButton->SetPosition(x, y); - labelButton->SetText(buttonText); - labelButton->SetViewId(buttonText); labelButton->SetFont(DEFAULT_VECTOR_FONT_FILENAME, FONT_DEFAULT_SIZE); labelButton->SetStyleForState(STYLE_BORDER_RADIUS, BUTTON_STYLE_BORDER_RADIUS_VALUE, UIButton::PRESSED); labelButton->SetStyleForState(STYLE_BORDER_RADIUS, BUTTON_STYLE_BORDER_RADIUS_VALUE, UIButton::INACTIVE); @@ -154,7 +180,7 @@ void AlarmSetWeekView::CreateWeekButton1(void) int viewPositionX = VIEW_POSITION_X; // 60 150 UIView::OnClickListener *clickListener = (UIView::OnClickListener *)OHOS::AlarmPresenter::GetInstance(); - buttonWeek[WEEK_SUN] = CreateUILabelButton(SUN, viewPositionX, WEEK_Y1); + buttonWeek[WEEK_SUN] = CreateUILabelButton(SUN,SUN_EN, viewPositionX, WEEK_Y1); if (buttonWeek[WEEK_SUN] == nullptr) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new buttonSun fail"); return; @@ -164,7 +190,7 @@ void AlarmSetWeekView::CreateWeekButton1(void) buttonWeek[WEEK_SUN]->SetViewId(SUNDAY); viewPositionX += WEEK_GAP_X; - buttonWeek[WEEK_MON] = CreateUILabelButton(MON, viewPositionX, WEEK_Y1); + buttonWeek[WEEK_MON] = CreateUILabelButton(MON,MON_EN, viewPositionX, WEEK_Y1); if (buttonWeek[WEEK_MON] == nullptr) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new buttonMon fail"); return; @@ -174,7 +200,7 @@ void AlarmSetWeekView::CreateWeekButton1(void) buttonWeek[WEEK_MON]->SetViewId(MONDAY); viewPositionX += WEEK_GAP_X; - buttonWeek[WEEK_TUE] = CreateUILabelButton(TUE, viewPositionX, WEEK_Y1); + buttonWeek[WEEK_TUE] = CreateUILabelButton(TUE,TUE_EN, viewPositionX, WEEK_Y1); if (buttonWeek[WEEK_TUE] == nullptr) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new buttonTue fail"); return; @@ -184,7 +210,7 @@ void AlarmSetWeekView::CreateWeekButton1(void) buttonWeek[WEEK_TUE]->SetViewId(TUESDAY); viewPositionX += WEEK_GAP_X; - buttonWeek[WEEK_WED] = CreateUILabelButton(WED, viewPositionX, WEEK_Y1); + buttonWeek[WEEK_WED] = CreateUILabelButton(WED,WED_EN, viewPositionX, WEEK_Y1); if (buttonWeek[WEEK_WED] == nullptr) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new buttonWed fail"); return; @@ -199,7 +225,7 @@ void AlarmSetWeekView::CreateWeekButton2(void) int viewPositionX2 = VIEW_POSITION_X2; // 12 210 UIView::OnClickListener *clickListener = (UIView::OnClickListener *)OHOS::AlarmPresenter::GetInstance(); - buttonWeek[WEEK_THUR] = CreateUILabelButton(THUR, viewPositionX2, WEEK_Y2); + buttonWeek[WEEK_THUR] = CreateUILabelButton(THUR,THUR_EN, viewPositionX2, WEEK_Y2); if (buttonWeek[WEEK_THUR] == nullptr) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new buttonThur fail"); return; @@ -209,7 +235,7 @@ void AlarmSetWeekView::CreateWeekButton2(void) buttonWeek[WEEK_THUR]->SetViewId(THURSDAY); viewPositionX2 += WEEK_GAP_X; - buttonWeek[WEEK_FRI] = CreateUILabelButton(FRI, viewPositionX2, WEEK_Y2); + buttonWeek[WEEK_FRI] = CreateUILabelButton(FRI,FRI_EN, viewPositionX2, WEEK_Y2); if (buttonWeek[WEEK_FRI] == nullptr) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new buttonFri fail"); return; @@ -219,7 +245,7 @@ void AlarmSetWeekView::CreateWeekButton2(void) buttonWeek[WEEK_FRI]->SetViewId(FRIDAY); viewPositionX2 += WEEK_GAP_X; - buttonWeek[WEEK_SAT] = CreateUILabelButton(SAT, viewPositionX2, WEEK_Y2); + buttonWeek[WEEK_SAT] = CreateUILabelButton(SAT,SAT_EN, viewPositionX2, WEEK_Y2); if (buttonWeek[WEEK_SAT] == nullptr) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new buttonSat fail"); return; @@ -246,74 +272,59 @@ void AlarmSetWeekView::SetLabelButton(void) WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new clickListener fail"); return; } - weekImage = new UILabelButton(); + weekImage = new UILabelButtonExt(); if (weekImage == nullptr) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmConfigView:: new weekImage fail"); return; } - // weekImage->SetPosition(TIME_LABEL_BUTTON_X, TIME_LABEL_BUTTON_Y, BUTTON_WIDHT3, BUTTON_HEIGHT3); - // weekImage->SetText(SURE); - // weekImage->SetTouchable(true); - // weekImage->SetViewId(ALARM_WEEK_OK); - // weekImage->SetFont(DEFAULT_VECTOR_FONT_FILENAME, LABEL_WEEK_FONT); - weekImage->SetPosition(0, 366, 466, 100); weekImage->SetViewId(ALARM_WEEK_OK); - weekImage->SetText(SURE); + weekImage->SetTextId(STR_OK);//确定 weekImage->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30); weekImage->SetTextColor(Color::GetColorFromRGBA(0xff, 0xff, 0xff, 0xff)); weekImage->SetImageSrc(PNG_BUTTON_466x100_IMAGE, PNG_BUTTON_466x100_IMAGE); weekImage->SetStyleForState(STYLE_BACKGROUND_COLOR, 0x00, UIButton::PRESSED); weekImage->SetTouchable(true); - - if (OHOS::AlarmPresenter::GetInstance() == nullptr) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmNewTimeView:: new ShadowBlue fail"); - return; - } - // weekImage->SetTextColor(OHOS::AlarmPresenter::GetInstance()->ShadowBlue()); weekImage->SetOnClickListener(clickListener); - // weekImage->SetImageSrc(PNG_NEW_DEVICE, PNG_NEW_DEVICE); group->Add(weekImage); } UIScrollView *AlarmSetWeekView::InitSetWeekView() { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView::InitSetWeekView"); - + WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView::InitSetWeekView"); group = new UIScrollView(); if (group == nullptr) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new group fail"); return group; } - group->SetPosition(CONTAINER_X, CONTAINER_Y, HORIZONTAL_RESOLUTION, VERTICAL_RESOLUTION); - labelRespeat = new UILabel(); + group->SetTouchable(true); + group->SetDraggable(true); + UIView::OnDragListener *setWeekDragListener = (UIView::OnDragListener *)OHOS::AlarmPresenter::GetInstance(); + if (setWeekDragListener == nullptr) { + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new setWeekDragListener fail"); + return group; + } + group->SetOnDragListener(setWeekDragListener); + /* -------------------------------------------------------------------------- */ + labelRespeat = new UILabelExt(); if (labelRespeat == nullptr) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new labelRespeat fail"); return group; } - group->Add(labelRespeat); - labelRespeat->SetText(RESPEAT); - // labelRespeat->SetFont(DEFAULT_VECTOR_FONT_FILENAME, DEFAULT_FONT); - // labelRespeat->SetPosition(TITLE_X, TITLE_Y, HORIZONTAL_RESOLUTION / 2, LABEL_POSITION_SIZE); + labelRespeat->SetTextId(STR_ALARM_REPEAT);//重复 labelRespeat->SetPosition(83, 50, 300, 35); labelRespeat->SetStyle(STYLE_TEXT_FONT, 30); labelRespeat->SetStyle(STYLE_LINE_HEIGHT, 35); labelRespeat->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER); labelRespeat->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30); + group->Add(labelRespeat); CreateWeekButton1(); CreateWeekButton2(); SetLabelButton(); - group->SetTouchable(true); - group->SetDraggable(true); - UIView::OnDragListener *setWeekDragListener = (UIView::OnDragListener *)OHOS::AlarmPresenter::GetInstance(); - if (setWeekDragListener == nullptr) { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "AlarmSetWeekView:: new setWeekDragListener fail"); - return group; - } - group->SetOnDragListener(setWeekDragListener); + return group; } 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 7711d2340..6f58e6a43 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/alarm/src/MainAlarmView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/alarm/src/MainAlarmView.cpp @@ -476,7 +476,7 @@ void MainAlarmView::OnStart() } // group->SetPosition(CONTAINER_X, CONTAINER_Y, HORIZONTAL_RESOLUTION, VERTICAL_RESOLUTION); group->SetPosition(0, 0, Screen::GetInstance().GetWidth(), Screen::GetInstance().GetHeight()); - group->SetScrollBlankSize(50); + group->SetScrollBlankSize(75); // group->SetMaxScrollDistance(1000); // 1000: max scroll distance // group->SetSwipeACCLevel(800); // 800: compensation distance // group->SetDragACCLevel(5); // 5: drag acceleration @@ -721,7 +721,7 @@ bool MainAlarmView::ChangeMaxClock(int16_t thisView) container[thisView] = maxClockView->InitAlarmMax(); RootView::GetInstance()->Add(container[thisView]); } - AlarmMaxClock::GetInstance()->AlarmMaxDelayExit(); + // AlarmMaxClock::GetInstance()->AlarmMaxDelayExit(); return true; } @@ -755,7 +755,7 @@ void MainAlarmView::DropView(UIView& view) } else if (&view == container[CHANGE_INTERFACE_MAXCLOCK]) { WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "MainAlarmView::DropView::container[CHANGE_INTERFACE_MAXCLOCK]"); ChangeView(CHANGE_INTERFACE_MAXCLOCK, MAIN_INTERFACE); - CancelScanHandle(); + // CancelScanHandle(); } else if (&view == container[MAIN_INTERFACE]) { // uint16_t preSlice = AlarmClockModel::GetInstance()->JudgePreSlice(); WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "MainAlarmView::DropView::container[MAIN_INTERFACE]");