解決”关于手表“视图4G Modem标签 和IMEI不能显示的问题 11/1 11/head 12/target/1 13/target/1
authorluozheng <1732036298@qq.com>
Mon, 15 Apr 2024 11:34:25 +0000 (19:34 +0800)
committerluozheng <1732036298@qq.com>
Mon, 15 Apr 2024 11:34:25 +0000 (19:34 +0800)
code/sdk/application/wearable/fd230app/nativeui/system/include/SystemAboutTheWatchView.h
code/sdk/application/wearable/fd230app/nativeui/system/src/SystemAboutTheWatchView.cpp

index f54a1ce..e0fefb4 100644 (file)
@@ -1,3 +1,10 @@
+/*\r
+ * @Author: luozheng 1732036298@qq.com\r
+ * @Date: 2024-03-30 09:14:38\r
+ * @LastEditors: luozheng 1732036298@qq.com\r
+ * @LastEditTime: 2024-04-15 18:20:29\r
+ * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/system/include/SystemAboutTheWatchView.h\r
+ */\r
 #ifndef SYSTEM_ABOUT_VIEW_H\r
 #define SYSTEM_ABOUT_VIEW_H\r
 \r
@@ -25,36 +32,35 @@ namespace OHOS
             int16_t height;\r
             int16_t fontSize;      // 字体大小\r
             int16_t lineHeigh;     // 行高\r
-            char *text;      // 文本\r
+            std::string text;      // 文本\r
             uint8_t lineBreakMode; // 断行模式。\r
         };\r
         UIScrollView *SystemAbouTheWatchtInitIView(void);\r
         void ClearAll(void);\r
+        UILabelExt *InitLabel_Ext(LabelConfig &labelConfig);\r
         UILabel *InitLabel(LabelConfig &labelConfig);\r
 \r
     private:\r
         bool SetSystemAboutTheWatchScrollView(void);\r
         UIScrollView *SystemAboutTheWatchScrollView{nullptr};\r
-        UILabel *SystemAboutTheWatchTitle{nullptr}; // “关于”\r
-        UILabel *WatchNameTitle{nullptr};           // “手表名称”\r
-        UILabel *WatchName{nullptr};\r
-        UILabel *FirmwareVersionTitle{nullptr}; //  "固件版本"\r
-        UILabel *FirmwareVersion{nullptr};\r
-        UILabel *AlgorithmVersionTitle{nullptr}; // “算法版本”\r
-        UILabel *AlgorithmVersion{nullptr};\r
-        UILabel *BluetoothAddressTitle{nullptr}; // “蓝牙地址”\r
-        UILabel *BluetoothAddress{nullptr};\r
-        UILabel *LANAddressTitle{nullptr}; // “局域网地址”\r
-        UILabel *LANAddress = nullptr;\r
-        UILabel *FONTTitle = nullptr;\r
+        UILabelExt *SystemAboutTheWatchTitle{nullptr}; // "关于"\r
+        UILabelExt *WatchNameTitle{nullptr};           // "手表名称Title"\r
+        UILabel *WatchName{nullptr};                   // "手表名称"\r
+        UILabelExt *FirmwareVersionTitle{nullptr};     // "固件版本Title"\r
+        UILabel *FirmwareVersion{nullptr};             // "固件版本"\r
+        UILabelExt *BluetoothNameTitle{nullptr};       // "蓝牙名称Title"\r
+        UILabel *BluetoothName{nullptr};               // "蓝牙名称"\r
+        UILabelExt *BluetoothAddressTitle{nullptr};    // "蓝牙地址Title"\r
+        UILabel *BluetoothAddress{nullptr};            // "蓝牙地址"\r
+        UILabelExt *Network4GTitle{nullptr};           // "4G ModemTitle"\r
+        UILabel *Network4G{nullptr};                   // "4G Modem"\r
+        UILabelExt *PyVerTitle{nullptr};               // "pyVerTitle"\r
+        UILabel *PyVer{nullptr};                       // "pyVer"\r
+        UILabelExt *IMELTitle{nullptr};                // "IMELTitle"\r
+        UILabel *IMEL{nullptr};                        // "IMELTitle"\r
+        UILabelExt *FONTTitle = nullptr;\r
         UILabel *FONT = nullptr;\r
 \r
-        UILabel *CAT1Title = nullptr;\r
-        UILabel *CAT1mode = nullptr;\r
-\r
-        UILabel *pyTitle = nullptr;\r
-        UILabel *pymode = nullptr;\r
-\r
         bool initViewStatus{false};\r
     };\r
 }\r
index 27c59e5..feab9bc 100644 (file)
@@ -4,28 +4,45 @@
 #include "custom_utils.h"\r
 #include "config/include/ConfigModel.h"\r
 \r
-#define  WATCH_ABOUT_TITLE_HEIGHT   50\r
-#define  WATCH_ABOUT_VALUE_HEIGHT   80\r
-#define  WATCH_NAME_POS_TOP         160\r
-#define  WATCH_NAME_VALUE_POS_TOP       (WATCH_NAME_POS_TOP + WATCH_ABOUT_TITLE_HEIGHT )\r
-#define  WATCH_FIRMWARE_POS_TOP         (WATCH_NAME_VALUE_POS_TOP + WATCH_ABOUT_VALUE_HEIGHT)\r
-#define  WATCH_FIRMWARE_VALUE_POS_TOP   (WATCH_FIRMWARE_POS_TOP + WATCH_ABOUT_TITLE_HEIGHT)\r
-#define  WATCH_BT_NAME_TOP              (WATCH_FIRMWARE_VALUE_POS_TOP + WATCH_ABOUT_VALUE_HEIGHT)\r
-#define  WATCH_BT_NAME_VALUE_TOP        (WATCH_BT_NAME_TOP + WATCH_ABOUT_TITLE_HEIGHT)\r
-#define  WATCH_BT_ADDR_TOP              (WATCH_BT_NAME_VALUE_TOP + WATCH_ABOUT_VALUE_HEIGHT)\r
-#define  WATCH_BT_ADDR_VALUE_TOP        (WATCH_BT_ADDR_TOP + WATCH_ABOUT_TITLE_HEIGHT)\r
-#define  WATCH_MODEM_VERSION_TOP        (WATCH_BT_ADDR_VALUE_TOP + WATCH_ABOUT_VALUE_HEIGHT)\r
-#define  WATCH_MODEM_VERSION_VALUE_TOP  (WATCH_MODEM_VERSION_TOP + WATCH_ABOUT_TITLE_HEIGHT)\r
-#define  WATCH_MODEM_APP_VERSION_TOP    (WATCH_MODEM_VERSION_VALUE_TOP + WATCH_ABOUT_VALUE_HEIGHT)\r
-#define  WATCH_MODEM_APP_VERSION_VALUE_TOP  (WATCH_MODEM_APP_VERSION_TOP + WATCH_ABOUT_TITLE_HEIGHT)\r
-#define  WATCH_IMEI_TOP                 (WATCH_MODEM_APP_VERSION_VALUE_TOP + WATCH_ABOUT_VALUE_HEIGHT)\r
-#define  WATCH_IMEI_VALUE_TOP           (WATCH_IMEI_TOP + WATCH_ABOUT_TITLE_HEIGHT)\r
-#define  WATCH_FONT_TOP                 (WATCH_IMEI_VALUE_TOP + WATCH_ABOUT_VALUE_HEIGHT)\r
-#define  WATCH_FONT_VALUE_TOP           (WATCH_FONT_TOP + WATCH_ABOUT_TITLE_HEIGHT)\r
-\r
+#define WATCH_ABOUT_TITLE_HEIGHT 50\r
+#define WATCH_ABOUT_VALUE_HEIGHT 80\r
+#define WATCH_NAME_POS_TOP 160\r
+#define WATCH_NAME_VALUE_POS_TOP (WATCH_NAME_POS_TOP + WATCH_ABOUT_TITLE_HEIGHT)\r
+#define WATCH_FIRMWARE_POS_TOP (WATCH_NAME_VALUE_POS_TOP + WATCH_ABOUT_VALUE_HEIGHT)\r
+#define WATCH_FIRMWARE_VALUE_POS_TOP (WATCH_FIRMWARE_POS_TOP + WATCH_ABOUT_TITLE_HEIGHT)\r
+#define WATCH_BT_NAME_TOP (WATCH_FIRMWARE_VALUE_POS_TOP + WATCH_ABOUT_VALUE_HEIGHT)\r
+#define WATCH_BT_NAME_VALUE_TOP (WATCH_BT_NAME_TOP + WATCH_ABOUT_TITLE_HEIGHT)\r
+#define WATCH_BT_ADDR_TOP (WATCH_BT_NAME_VALUE_TOP + WATCH_ABOUT_VALUE_HEIGHT)\r
+#define WATCH_BT_ADDR_VALUE_TOP (WATCH_BT_ADDR_TOP + WATCH_ABOUT_TITLE_HEIGHT)\r
+#define WATCH_MODEM_VERSION_TOP (WATCH_BT_ADDR_VALUE_TOP + WATCH_ABOUT_VALUE_HEIGHT)\r
+#define WATCH_MODEM_VERSION_VALUE_TOP (WATCH_MODEM_VERSION_TOP + WATCH_ABOUT_TITLE_HEIGHT)\r
+#define WATCH_MODEM_APP_VERSION_TOP (WATCH_MODEM_VERSION_VALUE_TOP + WATCH_ABOUT_VALUE_HEIGHT)\r
+#define WATCH_MODEM_APP_VERSION_VALUE_TOP (WATCH_MODEM_APP_VERSION_TOP + WATCH_ABOUT_TITLE_HEIGHT)\r
+#define WATCH_IMEI_TOP (WATCH_MODEM_APP_VERSION_VALUE_TOP + WATCH_ABOUT_VALUE_HEIGHT)\r
+#define WATCH_IMEI_VALUE_TOP (WATCH_IMEI_TOP + WATCH_ABOUT_TITLE_HEIGHT)\r
+#define WATCH_FONT_TOP (WATCH_IMEI_VALUE_TOP + WATCH_ABOUT_VALUE_HEIGHT)\r
+#define WATCH_FONT_VALUE_TOP (WATCH_FONT_TOP + WATCH_ABOUT_TITLE_HEIGHT)\r
 \r
 namespace OHOS\r
 {\r
+    static constexpr uint16_t SYSTEM_ABOUT_THEWATCH_TITLE_X = 93;\r
+    static constexpr uint16_t SYSTEM_ABOUT_THEWATCH_TITLE_Y = 52;\r
+    static constexpr uint16_t SYSTEM_ABOUT_THEWATCH_TITLE_W = 280;\r
+    static constexpr uint16_t SYSTEM_ABOUT_THEWATCH_TITLE_H = 40;\r
+    static constexpr uint16_t SYSTEM_ABOUT_THEWATCH_TITLE_FONTSIZE = 30;\r
+    static constexpr uint16_t SYSTEM_ABOUT_THEWATCH_TITLE_LINEHEIGHT = 35;\r
+\r
+    static constexpr uint16_t TITLE_LABEL_X = 53;\r
+    static constexpr uint16_t TITLE_LABEL_W = 360;\r
+    static constexpr uint16_t TITLE_LABEL_H = 40;\r
+    static constexpr uint16_t TITLE_LABEL_FONTSIZE = 30;\r
+    static constexpr uint16_t TITLE_LABEL_LINEHEIGHT = 35;\r
+\r
+    static constexpr uint16_t LABEL_X = 33;\r
+    static constexpr uint16_t LABEL_W = 400;\r
+    static constexpr uint16_t LABEL_H = 40;\r
+    static constexpr uint16_t LABEL_FONTSIZE = 30;\r
+    static constexpr uint16_t LABEL_LINEHEIGHT = 35;\r
 \r
     static SystemAboutTheWatchView *g_pSystemAboutTheWatchView{nullptr};\r
 \r
@@ -44,7 +61,6 @@ namespace OHOS
 \r
     SystemAboutTheWatchView *SystemAboutTheWatchView::GetInstance()\r
     {\r
-\r
         return g_pSystemAboutTheWatchView;\r
     }\r
 \r
@@ -53,42 +69,70 @@ namespace OHOS
         if (initViewStatus == true)\r
         {\r
             SystemAboutTheWatchScrollView->RemoveAll();\r
+\r
             delete SystemAboutTheWatchTitle;\r
             SystemAboutTheWatchTitle = nullptr;\r
+\r
             delete WatchNameTitle;\r
             WatchNameTitle = nullptr;\r
             delete WatchName;\r
             WatchName = nullptr;\r
+\r
             delete FirmwareVersionTitle;\r
             FirmwareVersionTitle = nullptr;\r
             delete FirmwareVersion;\r
             FirmwareVersion = nullptr;\r
-            delete AlgorithmVersionTitle;\r
-            AlgorithmVersionTitle = nullptr;\r
-            delete AlgorithmVersion;\r
-            AlgorithmVersion = nullptr;\r
+\r
+            delete BluetoothNameTitle;\r
+            BluetoothNameTitle = nullptr;\r
+            delete BluetoothName;\r
+            BluetoothName = nullptr;\r
+\r
             delete BluetoothAddressTitle;\r
             BluetoothAddressTitle = nullptr;\r
             delete BluetoothAddress;\r
             BluetoothAddress = nullptr;\r
-            delete LANAddressTitle;\r
-            LANAddressTitle = nullptr;\r
-            delete LANAddress;\r
-            LANAddress = nullptr;\r
+\r
+            delete Network4GTitle;\r
+            Network4GTitle = nullptr;\r
+            delete Network4G;\r
+            Network4G = nullptr;\r
+\r
+            delete PyVerTitle;\r
+            PyVerTitle = nullptr;\r
+            delete PyVer;\r
+            PyVer = nullptr;\r
+\r
+            delete IMELTitle;\r
+            IMELTitle = nullptr;\r
+            delete IMEL;\r
+            IMEL = nullptr;\r
+\r
             delete FONTTitle;\r
             FONTTitle = nullptr;\r
             delete FONT;\r
-            delete CAT1Title;\r
-            CAT1Title = nullptr;\r
-            delete CAT1mode;\r
-            CAT1mode = nullptr;\r
-            delete pyTitle;\r
-            pyTitle = nullptr;\r
-            delete pymode;\r
-            pymode = nullptr;\r
+            FONT = nullptr;\r
+\r
             delete SystemAboutTheWatchScrollView;\r
-            SystemAboutTheWatchScrollView = nullptr; \r
+            SystemAboutTheWatchScrollView = nullptr;\r
+        }\r
+    }\r
+\r
+    UILabelExt *SystemAboutTheWatchView::InitLabel_Ext(LabelConfig &labelConfig)\r
+    {\r
+        UILabelExt *label = new UILabelExt();\r
+        if (label == nullptr)\r
+        {\r
+            return nullptr;\r
         }\r
+        label->SetPosition(labelConfig.left, labelConfig.top, labelConfig.width, labelConfig.height); // 位置大小\r
+        label->SetStyle(STYLE_TEXT_FONT, labelConfig.fontSize);                                       // 字体大小\r
+        label->SetStyle(STYLE_LINE_HEIGHT, labelConfig.lineHeigh);                                    // 字体行高\r
+        label->SetText(labelConfig.text.c_str());                                                     // 内容\r
+        label->SetLineBreakMode(labelConfig.lineBreakMode);                                           // 断行模式。\r
+        label->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_TOP);\r
+        label->SetFont(DEFAULT_VECTOR_FONT_FILENAME, labelConfig.fontSize);\r
+        return label;\r
     }\r
 \r
     UILabel *SystemAboutTheWatchView::InitLabel(LabelConfig &labelConfig)\r
@@ -101,7 +145,7 @@ namespace OHOS
         label->SetPosition(labelConfig.left, labelConfig.top, labelConfig.width, labelConfig.height); // 位置大小\r
         label->SetStyle(STYLE_TEXT_FONT, labelConfig.fontSize);                                       // 字体大小\r
         label->SetStyle(STYLE_LINE_HEIGHT, labelConfig.lineHeigh);                                    // 字体行高\r
-        label->SetText(labelConfig.text);                                                             // 内容\r
+        label->SetText(labelConfig.text.c_str());                                                     // 内容\r
         label->SetLineBreakMode(labelConfig.lineBreakMode);                                           // 断行模式。\r
         label->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_TOP);\r
         label->SetFont(DEFAULT_VECTOR_FONT_FILENAME, labelConfig.fontSize);\r
@@ -119,13 +163,13 @@ namespace OHOS
         SystemAboutTheWatchScrollView->SetPosition(0, 0, Screen::GetInstance().GetWidth(), Screen::GetInstance().GetHeight());\r
         SystemAboutTheWatchScrollView->SetStyle(STYLE_BACKGROUND_OPA, 0xff);\r
         SystemAboutTheWatchScrollView->SetStyle(STYLE_BORDER_RADIUS, 1294);\r
-        SystemAboutTheWatchScrollView->SetScrollBlankSize(35);\r
+        SystemAboutTheWatchScrollView->SetScrollBlankSize(TITLE_LABEL_LINEHEIGHT);\r
         SystemAboutTheWatchScrollView->SetReboundSize(50);\r
         SystemAboutTheWatchScrollView->SetDirection(1);\r
         UIView::OnDragListener *draglistener = static_cast<UIView::OnDragListener *>(SystemPresenter::GetInstance());\r
         if (draglistener == nullptr)\r
         {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemView::draglistener can not be nullptr!");\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemAboutTheWatchView::draglistener can not be nullptr!");\r
             return false;\r
         }\r
         SystemAboutTheWatchScrollView->SetOnDragListener(draglistener);\r
@@ -147,350 +191,334 @@ namespace OHOS
         }\r
         /* -------------------------------------------------------------------------- */\r
         LabelConfig Config = {\r
-            .left = 203,\r
-            .top = 52,\r
-            .width = 60,\r
-            .height = 35,\r
-            .fontSize = 30,\r
-            .lineHeigh = 35,\r
+            .left = SYSTEM_ABOUT_THEWATCH_TITLE_X,\r
+            .top = SYSTEM_ABOUT_THEWATCH_TITLE_Y,\r
+            .width = SYSTEM_ABOUT_THEWATCH_TITLE_W,\r
+            .height = SYSTEM_ABOUT_THEWATCH_TITLE_H,\r
+            .fontSize = SYSTEM_ABOUT_THEWATCH_TITLE_FONTSIZE,\r
+            .lineHeigh = SYSTEM_ABOUT_THEWATCH_TITLE_LINEHEIGHT,\r
             .text = "关于",\r
-            .lineBreakMode = UILabel::LINE_BREAK_ADAPT,\r
+            .lineBreakMode = UILabel::LINE_BREAK_MARQUEE,\r
         };\r
-        SystemAboutTheWatchTitle = InitLabel(Config);\r
+        SystemAboutTheWatchTitle = InitLabel_Ext(Config);\r
         if (SystemAboutTheWatchTitle == nullptr)\r
         {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemView::SystemAboutTheWatchTitle new fail!");\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemAboutTheWatchView::SystemAboutTheWatchTitle new fail!");\r
             return nullptr;\r
         }\r
         SystemAboutTheWatchScrollView->Add(SystemAboutTheWatchTitle);\r
         /* -------------------------------------------------------------------------- */\r
         Config = {\r
-            .left = 173,\r
+            .left = TITLE_LABEL_X,\r
             .top = WATCH_NAME_POS_TOP,\r
-            .width = 120,\r
-            .height = 35,\r
-            .fontSize = 30,\r
-            .lineHeigh = 35,\r
+            .width = TITLE_LABEL_W,\r
+            .height = TITLE_LABEL_H,\r
+            .fontSize = TITLE_LABEL_FONTSIZE,\r
+            .lineHeigh = TITLE_LABEL_LINEHEIGHT,\r
             .text = "手表名称",\r
-            .lineBreakMode = UILabel::LINE_BREAK_ADAPT,\r
+            .lineBreakMode = UILabel::LINE_BREAK_MARQUEE,\r
         };\r
-        WatchNameTitle = InitLabel(Config);\r
+        WatchNameTitle = InitLabel_Ext(Config);\r
         if (WatchNameTitle == nullptr)\r
         {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemView::WatchNameTitle new fail!");\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemAboutTheWatchView::WatchNameTitle new fail!");\r
             return nullptr;\r
         }\r
         SystemAboutTheWatchScrollView->Add(WatchNameTitle);\r
         /* -------------------------------------------------------------------------- */\r
         Config = {\r
-            .left = 37,\r
+            .left = LABEL_X,\r
             .top = WATCH_NAME_VALUE_POS_TOP,\r
-            .width = 400,\r
-            .height = 30,\r
-            .fontSize = 26,\r
-            .lineHeigh = 30,\r
+            .width = LABEL_W,\r
+            .height = LABEL_H,\r
+            .fontSize = LABEL_FONTSIZE,\r
+            .lineHeigh = LABEL_LINEHEIGHT,\r
             .text = "Watch Soar",\r
-            .lineBreakMode = UILabel::LINE_BREAK_ELLIPSIS,\r
+            .lineBreakMode = UILabel::LINE_BREAK_WRAP,\r
         };\r
         WatchName = InitLabel(Config);\r
         if (WatchName == nullptr)\r
         {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemView::WatchName new fail!");\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemAboutTheWatchView::WatchName new fail!");\r
             return nullptr;\r
         }\r
-        WatchName->SetTextColor(Color::GetColorFromRGBA(0xff, 0xff, 0xff, 0x87));\r
+        WatchName->SetTextColor(Color::GetColorFromRGBA(0x88, 0x88, 0x88, 0xff));\r
         SystemAboutTheWatchScrollView->Add(WatchName);\r
         /* -------------------------------------------------------------------------- */\r
         Config = {\r
-            .left = 173,\r
+            .left = TITLE_LABEL_X,\r
             .top = WATCH_FIRMWARE_POS_TOP,\r
-            .width = 120,\r
-            .height = 35,\r
-            .fontSize = 30,\r
-            .lineHeigh = 35,\r
+            .width = TITLE_LABEL_W,\r
+            .height = TITLE_LABEL_H,\r
+            .fontSize = TITLE_LABEL_FONTSIZE,\r
+            .lineHeigh = TITLE_LABEL_LINEHEIGHT,\r
             .text = "固件版本",\r
-            .lineBreakMode = UILabel::LINE_BREAK_ADAPT,\r
+            .lineBreakMode = UILabel::LINE_BREAK_MARQUEE,\r
         };\r
-        FirmwareVersionTitle = InitLabel(Config);\r
+        FirmwareVersionTitle = InitLabel_Ext(Config);\r
         if (FirmwareVersionTitle == nullptr)\r
         {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemView::FirmwareVersionTitle new fail!");\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemAboutTheWatchView::FirmwareVersionTitle new fail!");\r
             return nullptr;\r
         }\r
         SystemAboutTheWatchScrollView->Add(FirmwareVersionTitle);\r
         /* -------------------------------------------------------------------------- */\r
-        char version_buf[128]={0};\r
-        uint32_t version_len=128;\r
-        uapi_get_buildversion((uint8_t*)version_buf,version_len);\r
+        char version_buf[128] = {0};\r
+        uint32_t version_len = 128;\r
+        uapi_get_buildversion((uint8_t *)version_buf, version_len);\r
         Config = {\r
-            .left = 37,\r
+            .left = LABEL_X,\r
             .top = WATCH_FIRMWARE_VALUE_POS_TOP,\r
-            .width = 400,\r
-            .height = 30,\r
-            .fontSize = 26,\r
-            .lineHeigh = 30,\r
-            .text = (char*)version_buf,\r
+            .width = LABEL_W,\r
+            .height = LABEL_H,\r
+            .fontSize = LABEL_FONTSIZE,\r
+            .lineHeigh = LABEL_LINEHEIGHT,\r
+            .text = (char *)version_buf,\r
             .lineBreakMode = UILabel::LINE_BREAK_WRAP,\r
         };\r
         FirmwareVersion = InitLabel(Config);\r
         if (FirmwareVersion == nullptr)\r
         {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemView::FirmwareVersion new fail!");\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemAboutTheWatchView::FirmwareVersion new fail!");\r
             return nullptr;\r
         }\r
-        FirmwareVersion->SetTextColor(Color::GetColorFromRGBA(0xff, 0xff, 0xff, 0x87));\r
+        FirmwareVersion->SetTextColor(Color::GetColorFromRGBA(0x88, 0x88, 0x88, 0xff));\r
         SystemAboutTheWatchScrollView->Add(FirmwareVersion);\r
         /* -------------------------------------------------------------------------- */\r
         Config = {\r
-            .left = 173,\r
-            .top = WATCH_IMEI_TOP,\r
-            .width = 120,\r
-            .height = 35,\r
-            .fontSize = 30,\r
-            .lineHeigh = 35,\r
-            .text = "IMEI",\r
-            .lineBreakMode = UILabel::LINE_BREAK_ADAPT,\r
+            .left = TITLE_LABEL_X,\r
+            .top = WATCH_BT_NAME_TOP,\r
+            .width = TITLE_LABEL_W,\r
+            .height = TITLE_LABEL_H,\r
+            .fontSize = TITLE_LABEL_FONTSIZE,\r
+            .lineHeigh = TITLE_LABEL_LINEHEIGHT,\r
+            .text = "蓝牙名称",\r
+            .lineBreakMode = UILabel::LINE_BREAK_MARQUEE,\r
         };\r
-        AlgorithmVersionTitle = InitLabel(Config);\r
-        if (AlgorithmVersionTitle == nullptr)\r
+        BluetoothNameTitle = InitLabel_Ext(Config);\r
+        if (BluetoothNameTitle == nullptr)\r
         {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemView::AlgorithmVersionTitle new fail!");\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemAboutTheWatchView::BluetoothNameTitle new fail!");\r
             return nullptr;\r
         }\r
-        SystemAboutTheWatchScrollView->Add(AlgorithmVersionTitle);\r
+        SystemAboutTheWatchScrollView->Add(BluetoothNameTitle);\r
         /* -------------------------------------------------------------------------- */\r
+        uint8_t ble_name[LABEL_FONTSIZE] = {0};\r
+        uint32_t ble_name_len = sizeof(ble_name);\r
+        errcode_t ret = uapi_get_nv_btname(ble_name, &ble_name_len);\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "get btname %s ,ret 0x%X\n", ble_name, ret);\r
+\r
         Config = {\r
-            .left = 37,\r
-            .top = WATCH_IMEI_VALUE_TOP,\r
-            .width = 400,\r
-            .height = 30,\r
-            .fontSize = 26,\r
-            .lineHeigh = 30,\r
-            .text = "",\r
-            .lineBreakMode = UILabel::LINE_BREAK_ELLIPSIS,\r
+            .left = LABEL_X,\r
+            .top = WATCH_BT_NAME_VALUE_TOP,\r
+            .width = LABEL_W,\r
+            .height = LABEL_H,\r
+            .fontSize = LABEL_FONTSIZE,\r
+            .lineHeigh = LABEL_LINEHEIGHT,\r
+            .text = (char *)ble_name,\r
+            .lineBreakMode = UILabel::LINE_BREAK_WRAP,\r
         };\r
-        Config.text = const_cast<char*>(ConfigModel::GetInstance()->Getimei().c_str());\r
-\r
-        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Imei %s , %s \r\n",Config.text,ConfigModel::GetInstance()->Getimei().c_str());\r
-\r
-\r
-\r
-        AlgorithmVersion = InitLabel(Config);\r
-        if (AlgorithmVersion == nullptr)\r
+        BluetoothName = InitLabel(Config);\r
+        if (BluetoothName == nullptr)\r
         {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemView::AlgorithmVersion new fail!");\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemAboutTheWatchView::BluetoothName new fail!");\r
             return nullptr;\r
         }\r
-        AlgorithmVersion->SetTextColor(Color::GetColorFromRGBA(0xff, 0xff, 0xff, 0x87));\r
-        SystemAboutTheWatchScrollView->Add(AlgorithmVersion);\r
+        BluetoothName->SetTextColor(Color::GetColorFromRGBA(0x88, 0x88, 0x88, 0xff));\r
+        SystemAboutTheWatchScrollView->Add(BluetoothName);\r
         /* -------------------------------------------------------------------------- */\r
         Config = {\r
-            .left = 173,\r
+            .left = TITLE_LABEL_X,\r
             .top = WATCH_BT_ADDR_TOP,\r
-            .width = 120,\r
-            .height = 35,\r
-            .fontSize = 30,\r
-            .lineHeigh = 35,\r
+            .width = TITLE_LABEL_W,\r
+            .height = TITLE_LABEL_H,\r
+            .fontSize = TITLE_LABEL_FONTSIZE,\r
+            .lineHeigh = TITLE_LABEL_LINEHEIGHT,\r
             .text = "蓝牙地址",\r
-            .lineBreakMode = UILabel::LINE_BREAK_ADAPT,\r
+            .lineBreakMode = UILabel::LINE_BREAK_MARQUEE,\r
         };\r
-        BluetoothAddressTitle = InitLabel(Config);\r
+        BluetoothAddressTitle = InitLabel_Ext(Config);\r
         if (BluetoothAddressTitle == nullptr)\r
         {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemView::BluetoothAddressTitle new fail!");\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemAboutTheWatchView::BluetoothAddressTitle new fail!");\r
             return nullptr;\r
         }\r
         SystemAboutTheWatchScrollView->Add(BluetoothAddressTitle);\r
         /* -------------------------------------------------------------------------- */\r
-        uint8_t btaddr[6] ={0};\r
-        uint8_t btaddr_str[64]={0};\r
+        uint8_t btaddr[6] = {0};\r
+        uint8_t btaddr_str[64] = {0};\r
         uint32_t len = 6;\r
-        errcode_t ret = uapi_get_nv_btaddr((uint8_t*)btaddr,&len);\r
-        sprintf((char*)btaddr_str , "%02X:%02X:%02X:%02X:%02X:%02X",btaddr[0],btaddr[1],btaddr[2],btaddr[3],btaddr[4],btaddr[5]);\r
+        ret = uapi_get_nv_btaddr((uint8_t *)btaddr, &len);\r
+        sprintf((char *)btaddr_str, "%02X:%02X:%02X:%02X:%02X:%02X", btaddr[0], btaddr[1], btaddr[2], btaddr[3], btaddr[4], btaddr[5]);\r
 \r
-        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,"get btaddr %s , ret 0x%X\n",btaddr_str,ret);\r
+        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "get btaddr %s , ret 0x%X\n", btaddr_str, ret);\r
         Config = {\r
-            .left = 37,\r
+            .left = LABEL_X,\r
             .top = WATCH_BT_ADDR_VALUE_TOP,\r
-            .width = 400,\r
-            .height = 30,\r
-            .fontSize = 26,\r
-            .lineHeigh = 30,\r
-            .text = "",\r
-            .lineBreakMode = UILabel::LINE_BREAK_ELLIPSIS,\r
+            .width = LABEL_W,\r
+            .height = LABEL_H,\r
+            .fontSize = LABEL_FONTSIZE,\r
+            .lineHeigh = LABEL_LINEHEIGHT,\r
+            .text = (char *)btaddr_str,\r
+            .lineBreakMode = UILabel::LINE_BREAK_WRAP,\r
         };\r
-        Config.text = (char*)btaddr_str; \r
-             \r
         BluetoothAddress = InitLabel(Config);\r
         if (BluetoothAddress == nullptr)\r
         {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemView::BluetoothAddress new fail!");\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemAboutTheWatchView::BluetoothAddress new fail!");\r
             return nullptr;\r
         }\r
-        BluetoothAddress->SetTextColor(Color::GetColorFromRGBA(0xff, 0xff, 0xff, 0x87));\r
+        BluetoothAddress->SetTextColor(Color::GetColorFromRGBA(0x88, 0x88, 0x88, 0xff));\r
         SystemAboutTheWatchScrollView->Add(BluetoothAddress);\r
         /* -------------------------------------------------------------------------- */\r
         Config = {\r
-            .left = 173,\r
-            .top = WATCH_BT_NAME_TOP,\r
-            .width = 120,\r
-            .height = 35,\r
-            .fontSize = 30,\r
-            .lineHeigh = 35,\r
-            .text = "蓝牙名称",\r
-            .lineBreakMode = UILabel::LINE_BREAK_ADAPT,\r
+            .left = TITLE_LABEL_X,\r
+            .top = WATCH_MODEM_VERSION_TOP,\r
+            .width = TITLE_LABEL_W,\r
+            .height = TITLE_LABEL_H,\r
+            .fontSize = TITLE_LABEL_FONTSIZE,\r
+            .lineHeigh = TITLE_LABEL_LINEHEIGHT,\r
+            .text = "4G Modem",\r
+            .lineBreakMode = UILabel::LINE_BREAK_MARQUEE,\r
         };\r
-        LANAddressTitle = InitLabel(Config);\r
-        if (LANAddressTitle == nullptr)\r
+        Network4GTitle = InitLabel_Ext(Config);\r
+        if (Network4GTitle == nullptr)\r
         {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemView::LANAddressTitle new fail!");\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemAboutTheWatchView::Network4GTitle new fail!");\r
             return nullptr;\r
         }\r
-        SystemAboutTheWatchScrollView->Add(LANAddressTitle);\r
+        SystemAboutTheWatchScrollView->Add(Network4GTitle);\r
         /* -------------------------------------------------------------------------- */\r
-       \r
-        uint8_t ble_name[20] = {0};\r
-        uint32_t ble_name_len = sizeof(ble_name) ;\r
-        ret = uapi_get_nv_btname(ble_name, &ble_name_len);\r
-        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP,"get btname %s ,ret 0x%X\n",ble_name,ret);\r
-       \r
         Config = {\r
-            .left = 37,\r
-            .top = WATCH_BT_NAME_VALUE_TOP,\r
-            .width = 400,\r
-            .height = 30,\r
-            .fontSize = 26,\r
-            .lineHeigh = 30,\r
-            .text = "",\r
-            .lineBreakMode = UILabel::LINE_BREAK_ELLIPSIS,\r
+            .left = LABEL_X,\r
+            .top = WATCH_MODEM_VERSION_VALUE_TOP,\r
+            .width = LABEL_W,\r
+            .height = LABEL_H,\r
+            .fontSize = LABEL_FONTSIZE - 2,\r
+            .lineHeigh = LABEL_LINEHEIGHT,\r
+            .text = ConfigModel::GetInstance()->GetmoderVer(),\r
+            .lineBreakMode = UILabel::LINE_BREAK_WRAP,\r
         };\r
-        Config.text = (char*)ble_name; \r
-        LANAddress = InitLabel(Config);\r
-        if (LANAddress == nullptr)\r
+        Network4G = InitLabel(Config);\r
+        if (Network4G == nullptr)\r
         {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemView::BTNAME new fail!");\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemAboutTheWatchView::Network4G new fail!");\r
             return nullptr;\r
         }\r
-        LANAddress->SetTextColor(Color::GetColorFromRGBA(0xff, 0xff, 0xff, 0x87));\r
-        SystemAboutTheWatchScrollView->Add(LANAddress);\r
+        Network4G->SetTextColor(Color::GetColorFromRGBA(0xff, 0xff, 0xff, 0x87));\r
+        SystemAboutTheWatchScrollView->Add(Network4G);\r
         /* -------------------------------------------------------------------------- */\r
         Config = {\r
-            .left = 173,\r
-            .top = WATCH_FONT_TOP,\r
-            .width = 120,\r
-            .height = 35,\r
-            .fontSize = 30,\r
-            .lineHeigh = 35,\r
-            .text = "FONTS",\r
-            .lineBreakMode = UILabel::LINE_BREAK_ADAPT,\r
+            .left = TITLE_LABEL_X,\r
+            .top = WATCH_MODEM_APP_VERSION_TOP,\r
+            .width = TITLE_LABEL_W,\r
+            .height = TITLE_LABEL_H,\r
+            .fontSize = TITLE_LABEL_FONTSIZE,\r
+            .lineHeigh = TITLE_LABEL_LINEHEIGHT,\r
+            .text = "pyVer",\r
+            .lineBreakMode = UILabel::LINE_BREAK_MARQUEE,\r
         };\r
-        FONTTitle = InitLabel(Config);\r
-        if (FONTTitle == nullptr)\r
+        PyVerTitle = InitLabel_Ext(Config);\r
+        if (PyVerTitle == nullptr)\r
         {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemView::FONTTitle new fail!");\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemAboutTheWatchView::PyVerTitle new fail!");\r
             return nullptr;\r
         }\r
-        SystemAboutTheWatchScrollView->Add(FONTTitle);\r
+        SystemAboutTheWatchScrollView->Add(PyVerTitle);\r
         /* -------------------------------------------------------------------------- */\r
         Config = {\r
-            .left = 37,\r
-            .top = WATCH_FONT_VALUE_TOP,\r
-            .width = 400,\r
-            .height = 30,\r
-            .fontSize = 26,\r
-            .lineHeigh = 30,\r
-            .text = "HarmonyOS Sans",\r
-            .lineBreakMode = UILabel::LINE_BREAK_ELLIPSIS,\r
+            .left = LABEL_X,\r
+            .top = WATCH_MODEM_APP_VERSION_VALUE_TOP,\r
+            .width = LABEL_W,\r
+            .height = LABEL_H,\r
+            .fontSize = LABEL_FONTSIZE,\r
+            .lineHeigh = LABEL_LINEHEIGHT,\r
+            .text = ConfigModel::GetInstance()->GetpyVer(),\r
+            .lineBreakMode = UILabel::LINE_BREAK_WRAP,\r
         };\r
-        LANAddress = InitLabel(Config);\r
-        if (LANAddress == nullptr)\r
+        PyVer = InitLabel(Config);\r
+        if (PyVer == nullptr)\r
         {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemView::LANAddress new fail!");\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemAboutTheWatchView::PyVer new fail!");\r
             return nullptr;\r
         }\r
-        LANAddress->SetTextColor(Color::GetColorFromRGBA(0xff, 0xff, 0xff, 0x87));\r
-        SystemAboutTheWatchScrollView->Add(LANAddress);\r
-\r
+        PyVer->SetTextColor(Color::GetColorFromRGBA(0xff, 0xff, 0xff, 0x87));\r
+        SystemAboutTheWatchScrollView->Add(PyVer);\r
+        /* -------------------------------------------------------------------------- */\r
         Config = {\r
-            .left = 173,\r
-            .top = WATCH_MODEM_VERSION_TOP,\r
-            .width = 120,\r
-            .height = 35,\r
-            .fontSize = 30,\r
-            .lineHeigh = 35,\r
-            .text = "4G Modem",\r
-            .lineBreakMode = UILabel::LINE_BREAK_ADAPT,\r
+            .left = TITLE_LABEL_X,\r
+            .top = WATCH_IMEI_TOP,\r
+            .width = TITLE_LABEL_W,\r
+            .height = TITLE_LABEL_H,\r
+            .fontSize = TITLE_LABEL_FONTSIZE,\r
+            .lineHeigh = TITLE_LABEL_LINEHEIGHT,\r
+            .text = "IMEI",\r
+            .lineBreakMode = UILabel::LINE_BREAK_MARQUEE,\r
         };\r
-        CAT1Title = InitLabel(Config);\r
-        if (CAT1Title == nullptr)\r
+        IMELTitle = InitLabel_Ext(Config);\r
+        if (IMELTitle == nullptr)\r
         {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemView::FONTTitle new fail!");\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemAboutTheWatchView::IMELTitle new fail!");\r
             return nullptr;\r
         }\r
-        SystemAboutTheWatchScrollView->Add(CAT1Title);\r
+        SystemAboutTheWatchScrollView->Add(IMELTitle);\r
         /* -------------------------------------------------------------------------- */\r
         Config = {\r
-            .left = 37,\r
-            .top = WATCH_MODEM_VERSION_VALUE_TOP,\r
-            .width = 400,\r
-            .height = 30,\r
-            .fontSize = 26,\r
-            .lineHeigh = 30,\r
-            .text = "HarmonyOS Sans",\r
+            .left = LABEL_X,\r
+            .top = WATCH_IMEI_VALUE_TOP,\r
+            .width = LABEL_W,\r
+            .height = LABEL_H,\r
+            .fontSize = LABEL_FONTSIZE,\r
+            .lineHeigh = TITLE_LABEL_LINEHEIGHT,\r
+            .text = ConfigModel::GetInstance()->Getimei(),\r
             .lineBreakMode = UILabel::LINE_BREAK_WRAP,\r
         };\r
-        Config.text=const_cast<char*>(ConfigModel::GetInstance()->GetmoderVer().c_str());\r
-        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "modemver %s , %s \r\n",Config.text,ConfigModel::GetInstance()->GetmoderVer().c_str());\r
-\r
-        CAT1mode = InitLabel(Config);\r
-        if (CAT1mode == nullptr)\r
+        IMEL = InitLabel(Config);\r
+        if (IMEL == nullptr)\r
         {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemView::LANAddress new fail!");\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemAboutTheWatchView::IMEL new fail!");\r
             return nullptr;\r
         }\r
-        CAT1mode->SetTextColor(Color::GetColorFromRGBA(0xff, 0xff, 0xff, 0x87));\r
-        SystemAboutTheWatchScrollView->Add(CAT1mode);\r
-\r
-         Config = {\r
-            .left = 173,\r
-            .top = WATCH_MODEM_APP_VERSION_TOP,\r
-            .width = 120,\r
-            .height = 35,\r
-            .fontSize = 30,\r
-            .lineHeigh = 35,\r
-            .text = "pyVer",\r
-            .lineBreakMode = UILabel::LINE_BREAK_ADAPT,\r
+        IMEL->SetTextColor(Color::GetColorFromRGBA(0xff, 0xff, 0xff, 0x87));\r
+        SystemAboutTheWatchScrollView->Add(IMEL);\r
+        /* -------------------------------------------------------------------------- */\r
+        Config = {\r
+            .left = TITLE_LABEL_X,\r
+            .top = WATCH_FONT_TOP,\r
+            .width = TITLE_LABEL_W,\r
+            .height = TITLE_LABEL_H,\r
+            .fontSize = TITLE_LABEL_FONTSIZE,\r
+            .lineHeigh = TITLE_LABEL_LINEHEIGHT,\r
+            .text = "FONTS",\r
+            .lineBreakMode = UILabel::LINE_BREAK_MARQUEE,\r
         };\r
-        pyTitle = InitLabel(Config);\r
-        if (pyTitle == nullptr)\r
+        FONTTitle = InitLabel_Ext(Config);\r
+        if (FONTTitle == nullptr)\r
         {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemView::FONTTitle new fail!");\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemAboutTheWatchView::FONTTitle new fail!");\r
             return nullptr;\r
         }\r
-        SystemAboutTheWatchScrollView->Add(pyTitle);\r
+        SystemAboutTheWatchScrollView->Add(FONTTitle);\r
         /* -------------------------------------------------------------------------- */\r
         Config = {\r
-            .left = 37,\r
-            .top = WATCH_MODEM_APP_VERSION_VALUE_TOP,\r
-            .width = 400,\r
-            .height = 30,\r
-            .fontSize = 26,\r
-            .lineHeigh = 30,\r
-            .text = "PyVer_3",\r
+            .left = LABEL_X,\r
+            .top = WATCH_FONT_VALUE_TOP,\r
+            .width = LABEL_W,\r
+            .height = LABEL_H,\r
+            .fontSize = LABEL_FONTSIZE,\r
+            .lineHeigh = LABEL_LINEHEIGHT,\r
+            .text = "HarmonyOS Sans",\r
             .lineBreakMode = UILabel::LINE_BREAK_WRAP,\r
         };\r
-        Config.text=const_cast<char*>(ConfigModel::GetInstance()->GetpyVer().c_str());\r
-        WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "pyver %s , %s \r\n",Config.text,ConfigModel::GetInstance()->GetpyVer().c_str());\r
-\r
-        pymode = InitLabel(Config);\r
-        if (CAT1mode == nullptr)\r
+        FONT = InitLabel(Config);\r
+        if (FONT == nullptr)\r
         {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemView::LANAddress new fail!");\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemAboutTheWatchView::FONT new fail!");\r
             return nullptr;\r
         }\r
-        pymode->SetTextColor(Color::GetColorFromRGBA(0xff, 0xff, 0xff, 0x87));\r
-        SystemAboutTheWatchScrollView->Add(pymode);\r
-\r
+        FONT->SetTextColor(Color::GetColorFromRGBA(0xff, 0xff, 0xff, 0x87));\r
+        SystemAboutTheWatchScrollView->Add(FONT);\r
+        /* -------------------------------------------------------------------------- */\r
         initViewStatus = true;\r
         return SystemAboutTheWatchScrollView;\r
     }\r