Merge #46 into xts_origin from refs/changes/46/head 48/target/1
author罗正 <1732036298@qq.com>
Thu, 18 Apr 2024 12:45:56 +0000 (12:45 +0000)
committersnickersun@163.com <accounts_62b90f7fcf51ade33b6f628e@mail.teambition.com>
Thu, 18 Apr 2024 12:45:56 +0000 (12:45 +0000)
Code review from 罗正

* refs/changes/46/head: (4 commits squashed)

  - 添加抬腕亮屏功能

  - Merge branch &#39;xts_origin&#39; of https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230 into xts_origin

  - 修改声音与震动视图

  - 修改天气视图:解决天气子地区显示错误问题

Signed-off-by: 罗正 <1732036298@qq.com>
Reviewed-by: snickersun@163.com <accounts_62b90f7fcf51ade33b6f628e@mail.teambition.com>
Merged-by: snickersun@163.com <accounts_62b90f7fcf51ade33b6f628e@mail.teambition.com>
link: https://codeup.aliyun.com/64191456b9581d62e8f81ac0/FD230/change/46
16 files changed:
code/sdk/application/wearable/fd230app/nativeui/config/include/ConfigModel.h
code/sdk/application/wearable/fd230app/nativeui/config/include/ConfigModelC.h
code/sdk/application/wearable/fd230app/nativeui/config/src/ConfigModel.cpp
code/sdk/application/wearable/fd230app/nativeui/displaybrightness/include/DisplayBrightnessModel.h
code/sdk/application/wearable/fd230app/nativeui/displaybrightness/include/DisplayBrightnessPresenter.h
code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessModel.cpp
code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessPresent.cpp
code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessView.cpp
code/sdk/application/wearable/fd230app/nativeui/producttest/src/testluminance.cpp
code/sdk/application/wearable/fd230app/nativeui/soundandvibration/include/SoundAndVibrationPresenter.h
code/sdk/application/wearable/fd230app/nativeui/soundandvibration/include/SoundAndVibrationView.h
code/sdk/application/wearable/fd230app/nativeui/soundandvibration/src/SoundAndVibrationModel.cpp
code/sdk/application/wearable/fd230app/nativeui/soundandvibration/src/SoundAndVibrationPresenter.cpp
code/sdk/application/wearable/fd230app/nativeui/soundandvibration/src/SoundAndVibrationView.cpp
code/sdk/application/wearable/fd230app/nativeui/weather/src/WeatherModel.cpp
code/sdk/drivers/peripheral/utils/custom_utils.c

index ddba642..bd01055 100644 (file)
@@ -105,14 +105,6 @@ namespace OHOS
     
         
         /* --------------------------------自定义封装 set与get方法 ------------------------------- */
-
-        bool GetRaiseToWake(void);
-
-        unsigned GetScreenBrightnessValue(void);
-        
-        void SetScreenDuration(unsigned int value);
-        unsigned int GetScreenDuration(void);
-
         bool GetClassicBlueToothState(void);
         
         void SetLanguage(int languageid);
@@ -140,8 +132,15 @@ namespace OHOS
         void SetDnotdisturb(bool state);
         bool GetDnotdisturb(void);
 
+        /* ----------------------------- 屏幕与亮度相关set与get ----------------------------- */
         void SetBrightness(int level);
         int  GetBrightness(void);
+
+        void SetScreenDuration(unsigned int value);
+        unsigned int GetScreenDuration(void);
+
+        void SetRaiseToWake(bool value);
+        bool GetRaiseToWake(void);
         // -------------------------------------------------------------------------- */
     private:
         configmodel_item configmodel_item_key_name[CONFIGMODEL_ITEM_MAX] =
index 9589a29..dbabfb4 100644 (file)
@@ -2,7 +2,7 @@
  * @Author: luozheng 1732036298@qq.com
  * @Date: 2024-04-17 09:32:03
  * @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-04-17 14:52:37
+ * @LastEditTime: 2024-04-18 15:44:00
  * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/config/include/ConfigModelC.h
  */
 #ifndef _CONFIG_MODEL_C_H_
@@ -41,6 +41,10 @@ void initScreenBrightness(void);
  */
 void initializeScreenDuration(void);
 
+/*
+ * @brief 初始化抬腕亮屏 
+ */
+void initializeRaiseToWake(void);
 #ifdef __cplusplus
 #if __cplusplus
 }
index 87c0202..5b6dd04 100644 (file)
@@ -488,14 +488,20 @@ namespace OHOS
 
     /* -------------------------------- set与get方法 ------------------------------- */
    
-    bool ConfigModel::GetRaiseToWake(void)
+    /*
+     * @brief 设置抬腕亮屏是否开启 
+     */    
+    void ConfigModel::SetRaiseToWake(bool value)
     {
-        return get_configData_bool(CONFIGMODEL_ITEM_RAISE_TO_WAKE);
+        set_condigData_Bool(CONFIGMODEL_ITEM_RAISE_TO_WAKE,value);
     }
-    /// @brief 获取亮度值
-    unsigned ConfigModel::GetScreenBrightnessValue(void)
+
+    /*
+     * @brief 获取抬腕亮屏是否开启 
+     */    
+    bool ConfigModel::GetRaiseToWake(void)
     {
-        return get_configData_int(CONFIGMODEL_ITEM_SCREEN_BRIGHTNESS_VALUE) ;
+        return get_configData_bool(CONFIGMODEL_ITEM_RAISE_TO_WAKE);
     }
 
     /* 
@@ -750,6 +756,20 @@ void initializeScreenDuration(void)
    unsigned int time = OHOS::ConfigModel::GetInstance()->GetScreenDuration();
    uapi_setScreenDuration(time);
 }
+
+void initializeRaiseToWake(void)
+{
+    WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "initializeRaiseToWake");
+    bool isOpen =  OHOS::ConfigModel::GetInstance()->GetRaiseToWake();
+    if(isOpen == true)
+    {
+        uapi_take_to_wake(1);
+    }
+    else
+    {
+        uapi_take_to_wake(2);
+    }
+}
 #ifdef __cplusplus
 #if __cplusplus
 }
index 015ef9d..06c5865 100644 (file)
@@ -2,7 +2,7 @@
  * @Author: luozheng 1732036298@qq.com\r
  * @Date: 2024-04-12 20:11:04\r
  * @LastEditors: luozheng 1732036298@qq.com\r
- * @LastEditTime: 2024-04-18 10:23:37\r
+ * @LastEditTime: 2024-04-18 15:36:31\r
  * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/include/DisplayBrightnessModel.h\r
  */\r
 #ifndef DISPLAY_BRIGHTNESS_MODEL_H_\r
@@ -15,21 +15,17 @@ namespace OHOS
     {\r
     public:\r
         static DisplayBrightnessModel *GetInstance(void);\r
-        void SetRaiseToBrightnessCheckBoxButtonStatus(bool value);\r
         bool RaiseToBrightnessCheckBoxButtonStatusInit(void);\r
         bool ScreenDurationRadioButtonSlectStatusInit(void);\r
         bool SelectScreenDurationLabelInit(void);\r
         void SetScreenDurationTime(unsigned int time);\r
         unsigned int GetScreenDurationTime(void);\r
+\r
     private:\r
         DisplayBrightnessModel();\r
-        DisplayBrightnessModel(const DisplayBrightnessModel &);\r
-        DisplayBrightnessModel &operator=(const DisplayBrightnessModel &);\r
+        DisplayBrightnessModel(const DisplayBrightnessModel &) = delete;\r
+        DisplayBrightnessModel &operator=(const DisplayBrightnessModel &) = delete;\r
         virtual ~DisplayBrightnessModel();\r
-\r
-    private:\r
-        bool RaiseToBrightnessCheckBoxButtonState{false};    // 抬腕按钮状态 ,默认补选中\r
-        unsigned int ScreenDurationTime{10000};\r
     };\r
 }\r
 \r
index bf3a59f..445a202 100644 (file)
@@ -2,7 +2,7 @@
  * @Author: luozheng 1732036298@qq.com\r
  * @Date: 2024-02-18 09:10:05\r
  * @LastEditors: luozheng 1732036298@qq.com\r
- * @LastEditTime: 2024-04-18 10:59:11\r
+ * @LastEditTime: 2024-04-18 15:53:53\r
  * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/include/DisplayBrightnessPresenter.h\r
  */\r
 #ifndef _DISPLAY_BRIGHTNESS_PRESENTER_H\r
@@ -15,6 +15,8 @@
 \r
 namespace OHOS\r
 {\r
+    static constexpr uint8_t WRIST_RAISE_TO_WAKE_ENABLED = 1;\r
+    static constexpr uint8_t WRIST_RAISE_TO_WAKE_DISENABLED = 2;\r
     typedef enum\r
     {\r
         DISPLAYBRIGHTNESSVIEW = 0, // 屏幕与亮度视图(slice)\r
index f58cbca..6cf09d5 100644 (file)
@@ -2,21 +2,19 @@
  * @Author: luozheng 1732036298@qq.com
  * @Date: 2024-04-12 20:11:04
  * @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-04-18 10:55:38
+ * @LastEditTime: 2024-04-18 15:34:22
  * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessModel.cpp
  */
 #include "displaybrightness/include/DisplayBrightnessModel.h"
 #include "displaybrightness/include/DisplayBrightnessPresenter.h"
 #include "wearable_log.h"
-#include "cat1_ctl.h"
+#include "config/include/ConfigModel.h"
 
 namespace OHOS
 {
 
     DisplayBrightnessModel::DisplayBrightnessModel()
     {
-        ConfigModel *p_ConfigModel = ConfigModel::GetInstance();
-        RaiseToBrightnessCheckBoxButtonState = p_ConfigModel->GetRaiseToWake();
     }
 
     DisplayBrightnessModel::~DisplayBrightnessModel() {}
@@ -27,16 +25,11 @@ namespace OHOS
         return &instance;
     }
 
-    /// @brief 设置抬腕亮屏按钮状态
-    /// @param value true 开启 false 关闭
-    void DisplayBrightnessModel::SetRaiseToBrightnessCheckBoxButtonStatus(bool value)
-    {
-        RaiseToBrightnessCheckBoxButtonState = value;
-    }
+    
 
-    /// @brief 显示与亮度及其子视图中的组件状态初始化
-    /// @param value true 开启 false 关闭
-    /// @return true 初始化成功 false 初始化失败
+    /*
+     * @brief 抬腕亮屏按钮状态设置
+     */    
     bool DisplayBrightnessModel::RaiseToBrightnessCheckBoxButtonStatusInit(void)
     {
         DisplayBrightnessPresenter *displayBrightnessPresent = DisplayBrightnessPresenter::GetInstance();
@@ -45,7 +38,7 @@ namespace OHOS
             WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "DisplayBrightnessViewAndSubViewComponentsStatusInit DisplayBrightnessPresenter GetInstance fail");
             return false;
         }
-        displayBrightnessPresent->SetRaiseToBrightnessState(RaiseToBrightnessCheckBoxButtonState); // 抬腕按钮的状态
+        displayBrightnessPresent->SetRaiseToBrightnessState(ConfigModel::GetInstance()->GetRaiseToWake()); // 抬腕按钮的状态
         return true;
     }
 
index 442efe7..f9b3782 100644 (file)
@@ -2,7 +2,7 @@
  * @Author: luozheng 1732036298@qq.com\r
  * @Date: 2024-03-30 09:14:38\r
  * @LastEditors: luozheng 1732036298@qq.com\r
- * @LastEditTime: 2024-04-18 11:16:04\r
+ * @LastEditTime: 2024-04-18 15:54:44\r
  * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessPresent.cpp\r
  */\r
 #include "AppViewIDs.h"\r
@@ -19,6 +19,7 @@
 #include <custom_utils.h>\r
 #include "map"\r
 #include "iostream"\r
+#include "config/include/ConfigModel.h"\r
 namespace OHOS\r
 {\r
     // 当前Presenter属性实例化的内存指针\r
@@ -55,7 +56,6 @@ namespace OHOS
         if (value != false)\r
         {\r
             displayBrightnessView->SetRaiseToBrightnessCheckBoxButtonState(UICheckBox::UICheckBoxState::SELECTED);\r
-            DisplayBrightnessModel::GetInstance()->SetRaiseToBrightnessCheckBoxButtonStatus(false); // 将Model层保存的状态清除\r
         }\r
     }\r
 \r
@@ -201,9 +201,13 @@ namespace OHOS
         {\r
         case UICheckBox::SELECTED:\r
             WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Raise to Wake switched on!");\r
+            uapi_take_to_wake(WRIST_RAISE_TO_WAKE_ENABLED);\r
+            ConfigModel::GetInstance()->SetRaiseToWake(true);\r
             break;\r
         case UICheckBox::UNSELECTED:\r
             WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Raise to Wake switched off!");\r
+            uapi_take_to_wake(WRIST_RAISE_TO_WAKE_DISENABLED);\r
+            ConfigModel::GetInstance()->SetRaiseToWake(false);\r
             break;\r
         default:\r
             break;\r
index 56872bf..35e43a7 100644 (file)
@@ -60,18 +60,6 @@ namespace OHOS
             delete RaiseToBrightnessImage;\r
             RaiseToBrightnessImage = nullptr;\r
 \r
-            state = GetRaiseToBrightnessCheckBoxButtonState();\r
-            if (state == UICheckBox::UICheckBoxState::SELECTED)\r
-            {\r
-                DisplayBrightnessModel::GetInstance()->SetRaiseToBrightnessCheckBoxButtonStatus(true);\r
-                ConfigModel::GetInstance()->set_condigData_Bool(ConfigModel::ConfigItem::CONFIGMODEL_ITEM_RAISE_TO_WAKE, true);\r
-            }\r
-            else\r
-            {\r
-                DisplayBrightnessModel::GetInstance()->SetRaiseToBrightnessCheckBoxButtonStatus(false);\r
-                ConfigModel::GetInstance()->set_condigData_Bool(ConfigModel::ConfigItem::CONFIGMODEL_ITEM_RAISE_TO_WAKE, false);\r
-            }\r
-\r
             delete RaiseToBrightnessCheckBoxButton;\r
             RaiseToBrightnessCheckBoxButton = nullptr;\r
 \r
@@ -462,7 +450,7 @@ namespace OHOS
         return true;\r
     }\r
 \r
-    // 3.切换到“亮屏时长”视图\r
+    // 2.切换到“亮屏时长”视图\r
     bool DisplayBrightnessView::ChangeScreenDurationView(int16_t thisView)\r
     {\r
         if (DisplayBrightnessScrollView[thisView] == nullptr)\r
index ef0b87d..d4df051 100644 (file)
@@ -94,7 +94,7 @@ namespace OHOS
         BrightnessControlViewSlider->SetForegroundStyle(STYLE_BACKGROUND_OPA, 0xff);
         BrightnessControlViewSlider->SetDraggable(true);
         ConfigModel *p_ConfigModel = ConfigModel::GetInstance();
-        unsigned int value = p_ConfigModel->GetScreenBrightnessValue();
+        unsigned int value = p_ConfigModel->GetBrightness();
 
         BrightnessControlViewSlider->SetValue(value);
 
index 8869a90..4440804 100644 (file)
@@ -2,39 +2,25 @@
  * @Author: luozheng 1732036298@qq.com\r
  * @Date: 2024-02-19 10:39:08\r
  * @LastEditors: luozheng 1732036298@qq.com\r
- * @LastEditTime: 2024-04-01 19:33:48\r
+ * @LastEditTime: 2024-04-18 18:05:12\r
  * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/soundandvibration/include/SoundAndVibrationPresenter.h\r
  */\r
 #ifndef SOUND_AND_VIBRATION_PRESENTER_H\r
 #define SOUND_AND_VIBRATION_PRESENTER_H\r
 \r
 #include "Presenter.h"\r
+#include "View.h"\r
 #include "SoundAndVibrationView.h"\r
-#include "KeyInputListener.h"\r
 #include "soundandvibration/include/SoundAndVibrationModel.h"\r
 \r
 namespace OHOS\r
 {\r
-    class SoundAndVibrationViewOnChangeListener : public UICheckBox::OnChangeListener\r
-    {\r
-    public:\r
-        SoundAndVibrationViewOnChangeListener(UIView *view)\r
-        {\r
-            view_ = view;\r
-        }\r
-\r
-        ~SoundAndVibrationViewOnChangeListener() {}\r
-\r
-        bool OnChange(UICheckBox::UICheckBoxState state) override;\r
-\r
-    private:\r
-        UIView *view_{nullptr};\r
-    };\r
 \r
     class SoundAndVibrationView;\r
     class SoundAndVibrationPresenter : public Presenter<SoundAndVibrationView>,\r
                                        public UIView::OnClickListener,\r
                                        public RootView::OnKeyActListener,\r
+                                       public UICheckBox::OnChangeListener,\r
                                        public UIView::OnDragListener\r
     {\r
     public:\r
@@ -47,7 +33,6 @@ namespace OHOS
         void OnStop() override;\r
 \r
         static SoundAndVibrationPresenter *GetInstance();\r
-        void VibrationReminderToggleButtonStateSetting(bool value);\r
         void SilentModeToggleButtonStateSetting(bool value);\r
 \r
     private:\r
@@ -56,9 +41,7 @@ namespace OHOS
         bool OnDrag(UIView &view, const DragEvent &event) override;\r
         bool OnDragEnd(UIView &view, const DragEvent &event) override;\r
         bool OnKeyAct(UIView &view, const KeyEvent &event) override; // 增加按键事件\r
-\r
-    private:\r
-        UIView *view_{nullptr};\r
+        bool OnChange(UICheckBox::UICheckBoxState state) override;\r
     };\r
 } // namespace OHOS\r
 \r
index d09295d..ad40dc3 100644 (file)
@@ -9,6 +9,7 @@
 #include "components/ui_button.h"\r
 #include "components/ui_image_view.h"\r
 #include "components/ui_toggle_button.h"\r
+#include "iostream"\r
 namespace OHOS\r
 {\r
     /* ----------------------------------- 图片 ----------------------------------- */\r
@@ -16,9 +17,9 @@ namespace OHOS
     static constexpr const char *PNG_CALL_VOLUME_IMAGE = "/user/res/SoundAndVibration/CALL_VOLUME.bin";     // 通话音量图片\r
     static constexpr const char *PNG_MEDIA_VOLUME_IMAGE = "/user/res/SoundAndVibration/MEDIA_VOLUME.bin";   // 媒体音量图片\r
     /* ---------------------------------- 组件ID ---------------------------------- */\r
-    static const char *SYSTEM_VOLUME_BUTTON = "SystemVolumeButton";                       // 系统音量按钮ID\r
-    static const char *CALL_VOLUME_BUTTON = "CallVolumeButton";                           // 通话音量按钮ID\r
-    static const char *MEDIA_VOLUME_BUTTON = "MediaVolumeButton";                         // åª\92ä½\93é\9f³é\87\8fæ\8c\89é\92®ID\r
+    static const char *SYSTEM_VOLUME_BUTTON = "SystemVolumeButton";           // 系统音量按钮ID\r
+    static const char *CALL_VOLUME_BUTTON = "CallVolumeButton";               // 通话音量按钮ID\r
+    static const char *VIBRATION_REMINDER_BUTTON = "VibrationReminderButton"; // é\9c\87å\8a¨æ¨¡å¼\8fæ\8c\89é\92®ID\r
     class SoundAndVibrationPresenter;\r
     class SoundAndVibrationView : public View<SoundAndVibrationPresenter>\r
     {\r
@@ -40,7 +41,7 @@ namespace OHOS
             int16_t height;\r
             int16_t fontSize;      // 字体大小\r
             int16_t lineHeigh;     // 行高\r
-            const char *text;      // 文本\r
+            std::string text;      // 文本\r
             uint8_t lineBreakMode; // 断行模式。\r
         };\r
         struct ButtonConfig\r
@@ -51,18 +52,14 @@ namespace OHOS
             int16_t h;\r
             const char *ViewId;\r
             int64_t BackgroundColorValue;          // 按钮背景颜色值\r
-            int64_t TriggeredBackgroundColorValue; // 点击按钮触发的背景颜色值\r
         };\r
         SoundAndVibrationView();\r
         virtual ~SoundAndVibrationView();\r
         static SoundAndVibrationView *GetInstance(void);\r
 \r
-        void SetVibrationReminderToggleButtonState(bool value);\r
         void SetSilentModeToggleButtonState(bool value);\r
-        bool GetVibrationReminderToggleButtonState(void);\r
         bool GetSilentModeToggleButtonState(void);\r
-        UIToggleButton * GetVibrationReminderToggleButton();\r
-        UIToggleButton * GetSilentModeToggleButton();\r
+        UIToggleButton *GetSilentModeToggleButton();\r
 \r
         void OnStart() override;\r
         void OnSetUpView() override;\r
@@ -74,7 +71,7 @@ namespace OHOS
         void ClearAll(void);\r
         UIButton *SetUpButton(ButtonConfig &buttonconfig, UIView::OnClickListener *clickListener);\r
         UIImageView *SetUpImageVIew(ImageConfig &imageconfig);\r
-        UILabel *SetUpLabel(LabelConfig &labelConfig);\r
+        UILabelExt *SetUpLabel(LabelConfig &labelConfig);\r
         bool InitSoundAndVibrationScrollView(void);\r
         bool InitSoundAndVibrationViewTitleLabel(void);\r
         bool InitSoundAndVibrationButtonView(void);\r
@@ -85,23 +82,19 @@ namespace OHOS
 \r
     private:\r
         UIScrollView *SoundAndVibrationScrollView{nullptr};\r
-        UILabel *Title{nullptr};                                // 标题:“声音与震动”\r
-        UIButton *SystemVolumeButton{nullptr};                  // 系统音量按钮\r
-        UIButton *CallVolumeButton{nullptr};                    // 通话音量按钮\r
-        UIButton *MediaVolumeButton{nullptr};                   // 媒体音量按钮\r
-        UILabel *SystemVolumeLabel{nullptr};                    // 系统音量标签\r
-        UILabel *CallVolumeLabel{nullptr};                      // 通话音量标签\r
-        UILabel *MediaVolumeLabel{nullptr};                     // 媒体音量标签\r
-        UILabel *VibrationReminderLabel{nullptr};               // 震动提醒标签\r
-        UILabel *SilentModeLabel{nullptr};                      // 静音模式标签\r
-        UILabel *reminder[4]{nullptr};                          // 提示标签\r
-        UIImageView *nextImageView[3]{nullptr};                 // 箭头图片\r
-        UIImageView *VibrationReminderImageView{nullptr};       //\r
-        UIImageView *SilentModeImageView{nullptr};              //\r
-        UIToggleButton *VibrationReminderToggleButton{nullptr}; // 震动提醒切换按钮\r
-        UIToggleButton *SilentModeToggleButton{nullptr};        // 静音模式切换按钮\r
-        UICheckBox::OnChangeListener *VibrationReminderToggleButtonChangeListener{nullptr};\r
-        UICheckBox::OnChangeListener *SilentModeToggleButtonChangeListener{nullptr};\r
+        UILabelExt *Title{nullptr};                       // 标题:“声音与震动”\r
+        UIButton *SystemVolumeButton{nullptr};            // 系统音量按钮\r
+        UIButton *CallVolumeButton{nullptr};              // 通话音量按钮\r
+        UIButton *VibrationReminderButton{nullptr};       // 震动提醒按钮\r
+        UILabelExt *SystemVolumeLabel{nullptr};           // 系统音量标签\r
+        UILabelExt *CallVolumeLabel{nullptr};             // 通话音量标签\r
+        UILabelExt *VibrationReminderLabel{nullptr};      // 震动提醒标签\r
+        UILabelExt *SilentModeLabel{nullptr};             // 静音模式标签\r
+        // UILabelExt *reminder[4]{nullptr};                 // 提示标签\r
+        UIImageView *nextImageView[3]{nullptr};           // 箭头图片\r
+        UIImageView *VibrationReminderImageView{nullptr}; //\r
+        UIImageView *SilentModeImageView{nullptr};        //\r
+        UIToggleButton *SilentModeToggleButton{nullptr}; // 静音模式切换按钮\r
         bool initViewStatus{false};\r
     };\r
 } // namespace OHOS\r
index 98e1239..1513db2 100644 (file)
@@ -2,7 +2,7 @@
  * @Author: luozheng 1732036298@qq.com
  * @Date: 2024-02-23 09:17:00
  * @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-04-01 18:19:45
+ * @LastEditTime: 2024-04-18 18:03:36
  * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/soundandvibration/src/SoundAndVibrationModel.cpp
  */
 #include "soundandvibration/include/SoundAndVibrationModel.h"
@@ -34,26 +34,11 @@ namespace OHOS
         VibrationReminderToggleButtonState = value;
     }
 
-    /// @brief “震动提醒”切换按钮状态初始化
-    /// @param void
-    /// @return true 初始化成功 false 初始化失败
-    bool SoundAndVibrationModel::VibrationReminderToggleButtonStatusInit(void)
-    {
-        SoundAndVibrationPresenter *p_SoundAndVibrationPresenter = SoundAndVibrationPresenter::GetInstance();
-        if (p_SoundAndVibrationPresenter == nullptr)
-        {
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "VibrationReminderToggleButtonStatusInit SoundAndVibrationPresenter GetInstance fail!");
-            return false;
-        }
-        p_SoundAndVibrationPresenter->VibrationReminderToggleButtonStateSetting(VibrationReminderToggleButtonState);
-        return true;
-    }
-
     /// @brief 设置“静音模式”是否开启
     /// @param value
     void SoundAndVibrationModel::SetSilentModeToggleButtonStatus(bool value)
     {
-        SilentModeToggleButtonState = value;
+        ConfigModel::GetInstance()->SetSilentMode(value);
     }
 
     /// @brief “静音模式”切换按钮状态初始化
index 062f1e7..0207918 100644 (file)
@@ -2,13 +2,13 @@
  * @Author: luozheng 1732036298@qq.com\r
  * @Date: 2024-02-19 10:39:11\r
  * @LastEditors: luozheng 1732036298@qq.com\r
- * @LastEditTime: 2024-04-02 09:14:23\r
+ * @LastEditTime: 2024-04-18 18:08:44\r
  * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/soundandvibration/src/SoundAndVibrationPresenter.cpp\r
  */\r
 \r
 #include "AppViewIDs.h"\r
 #include "components/ui_label_ext.h"\r
-#include"language/font/ui_resource_string.h"\r
+#include "language/font/ui_resource_string.h"\r
 #include "NativeAbility.h"\r
 #include "graphic_math.h"\r
 #include "string.h"\r
@@ -16,6 +16,7 @@
 #include "common/key_code.h"\r
 #include "custom_utils.h"\r
 #include "config/include/ConfigModel.h"\r
+#include <ohos_types.h>\r
 \r
 namespace OHOS\r
 {\r
@@ -41,22 +42,6 @@ namespace OHOS
         return g_pSoundAndVibrationPresenter;\r
     }\r
 \r
-    /// @brief "震动提醒"按钮状态设置\r
-    /// @param value true 开启 false 关闭\r
-    void SoundAndVibrationPresenter::VibrationReminderToggleButtonStateSetting(bool value)\r
-    {\r
-        SoundAndVibrationView *p_SoundAndVibrationView = SoundAndVibrationView::GetInstance();\r
-        if (p_SoundAndVibrationView == nullptr)\r
-        {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "VibrationReminderToggleButtonStateSetting SoundAndVibrationView GetInstance fail!");\r
-            return;\r
-        }\r
-        if (value != false)\r
-        {\r
-            p_SoundAndVibrationView->SetVibrationReminderToggleButtonState(true);\r
-        }\r
-    }\r
-\r
     /// @brief "静音模式"按钮状态设置\r
     /// @param value true 开启 false 关闭\r
     void SoundAndVibrationPresenter::SilentModeToggleButtonStateSetting(bool value)\r
@@ -108,7 +93,7 @@ namespace OHOS
         WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "SoundAndVibrationPresenter::OnDragEnd");\r
         if (event.GetDragDirection() == DragEvent::DIRECTION_LEFT_TO_RIGHT)\r
         {\r
-            NativeAbility::GetInstance().ChangeSlice(VIEW_SETTING);\r
+            NativeAbility::GetInstance().Back();\r
         }\r
         return true;\r
     }\r
@@ -122,77 +107,41 @@ namespace OHOS
         // 如果是power键,且是亮屏状态,按键释放就返回上一级\r
         if (keyID == static_cast<uint16_t>(ZliteKeyCode::ZLITE_KEY_POWER) && keyState == 0 && uapi_get_screen_state() == 0)\r
         {\r
-            NativeAbility::GetInstance().ChangeSlice(VIEW_SETTING);\r
+            NativeAbility::GetInstance().Back();\r
         }\r
         return true;\r
     }\r
 \r
     bool SoundAndVibrationPresenter::OnClick(UIView &view, const ClickEvent &event)\r
     {\r
-\r
-        // 根据控件id查找是哪个控件触发了点击回调\r
         UNUSED(event);\r
         if (strcmp(view.GetViewId(), SYSTEM_VOLUME_BUTTON) == 0)\r
         {\r
-            NativeAbility::GetInstance().ChangeSlice(VIEW_SYSTEM_VOLUME);\r
-            return true;\r
+            NativeAbility::GetInstance().EnterSlice(VIEW_SYSTEM_VOLUME);\r
         }\r
         else if (strcmp(view.GetViewId(), CALL_VOLUME_BUTTON) == 0)\r
         {\r
-            NativeAbility::GetInstance().ChangeSlice(VIEW_SYSTEM_VOLUME);\r
-            return true;\r
+            NativeAbility::GetInstance().EnterSlice(VIEW_SYSTEM_VOLUME);\r
         }\r
-        else if (strcmp(view.GetViewId(), MEDIA_VOLUME_BUTTON) == 0)\r
+        else if (strcmp(view.GetViewId(), VIBRATION_REMINDER_BUTTON) == 0)\r
         {\r
-            NativeAbility::GetInstance().ChangeSlice(VIEW_SYSTEM_VOLUME);\r
-            return true;\r
+            NativeAbility::GetInstance().EnterSlice(VIEW_SYSTEM_VOLUME);\r
         }\r
-        return false;\r
+        return true;\r
     }\r
 \r
-    bool SoundAndVibrationViewOnChangeListener::OnChange(UICheckBox::UICheckBoxState state)\r
+    bool SoundAndVibrationPresenter::OnChange(UICheckBox::UICheckBoxState state)\r
     {\r
-        SoundAndVibrationView *p_SoundAndVibrationView = SoundAndVibrationView::GetInstance();\r
-        if (p_SoundAndVibrationView == nullptr)\r
-        {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SoundAndVibrationView::GetInstance fail!");\r
-            return false;\r
-        }\r
-        SoundAndVibrationModel* p_SoundAndVibrationModel = SoundAndVibrationModel::GetInstance();\r
-        ConfigModel *p_ConfigModel = ConfigModel::GetInstance();\r
+        SoundAndVibrationModel *p_SoundAndVibrationModel = SoundAndVibrationModel::GetInstance();\r
         switch (state)\r
         {\r
         case UICheckBox::SELECTED:\r
-            if (p_SoundAndVibrationView->GetVibrationReminderToggleButton() == (UIView *)view_)\r
-            {\r
-                WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "VibrationReminder is enable!");\r
-                p_SoundAndVibrationModel->SetVibrationReminderToggleButtonStaus(true);\r
-                p_ConfigModel->SetVibrationReminder(true);\r
-                return true;\r
-            }\r
-            else if (p_SoundAndVibrationView->GetSilentModeToggleButton() == (UIView *)view_)\r
-            {\r
-                WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SilentMode is enable!");\r
-                p_SoundAndVibrationModel->SetSilentModeToggleButtonStatus(true);\r
-                p_ConfigModel->SetSilentMode(true);\r
-                return true;\r
-            }\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SilentMode is enable!");\r
+            p_SoundAndVibrationModel->SetSilentModeToggleButtonStatus(true);\r
             break;\r
         case UICheckBox::UNSELECTED:\r
-            if (p_SoundAndVibrationView->GetVibrationReminderToggleButton() == (UIView *)view_)\r
-            {\r
-                WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "VibrationReminder is disable!");\r
-                p_SoundAndVibrationModel->SetVibrationReminderToggleButtonStaus(false);\r
-                p_ConfigModel->SetVibrationReminder(false);\r
-                return true;\r
-            }\r
-            else if (p_SoundAndVibrationView->GetSilentModeToggleButton() == (UIView *)view_)\r
-            {\r
-                WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SilentMode is disable!");\r
-                p_SoundAndVibrationModel->SetSilentModeToggleButtonStatus(false);\r
-                p_ConfigModel->SetSilentMode(false);\r
-                return true;\r
-            }\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SilentMode is disable!");\r
+            p_SoundAndVibrationModel->SetSilentModeToggleButtonStatus(false);\r
             break;\r
         default:\r
             break;\r
index 6d2a219..d9df73e 100644 (file)
@@ -54,8 +54,8 @@ namespace OHOS
             delete CallVolumeButton;\r
             CallVolumeButton = nullptr;\r
 \r
-            delete MediaVolumeButton;\r
-            MediaVolumeButton = nullptr;\r
+            delete VibrationReminderButton;\r
+            VibrationReminderButton = nullptr;\r
 \r
             delete SystemVolumeLabel;\r
             SystemVolumeLabel = nullptr;\r
@@ -63,20 +63,17 @@ namespace OHOS
             delete CallVolumeLabel;\r
             CallVolumeLabel = nullptr;\r
 \r
-            delete MediaVolumeLabel;\r
-            MediaVolumeLabel = nullptr;\r
-\r
             delete VibrationReminderLabel;\r
             VibrationReminderLabel = nullptr;\r
 \r
             delete SilentModeLabel;\r
             SilentModeLabel = nullptr;\r
 \r
-            for (int i = 0; i < 4; i++)\r
-            {\r
-                delete reminder[i];\r
-                reminder[i] = nullptr;\r
-            }\r
+            // for (int i = 0; i < 4; i++)\r
+            // {\r
+            //     delete reminder[i];\r
+            //     reminder[i] = nullptr;\r
+            // }\r
 \r
             for (int i = 0; i < 3; i++)\r
             {\r
@@ -90,15 +87,6 @@ namespace OHOS
             delete SilentModeImageView;\r
             SilentModeImageView = nullptr;\r
 \r
-            delete VibrationReminderToggleButtonChangeListener;\r
-            VibrationReminderToggleButtonChangeListener = nullptr;\r
-\r
-            delete SilentModeToggleButtonChangeListener;\r
-            SilentModeToggleButtonChangeListener = nullptr;\r
-\r
-            delete VibrationReminderToggleButton;\r
-            VibrationReminderToggleButton = nullptr;\r
-\r
             delete SilentModeToggleButton;\r
             SilentModeToggleButton = nullptr;\r
 \r
@@ -120,7 +108,8 @@ namespace OHOS
         button->SetPosition(buttonconfig.x, buttonconfig.y, buttonconfig.w, buttonconfig.h);\r
         button->SetViewId(buttonconfig.ViewId);\r
         button->SetStyle(STYLE_BACKGROUND_COLOR, buttonconfig.BackgroundColorValue);\r
-        button->SetStyleForState(STYLE_BACKGROUND_COLOR, buttonconfig.TriggeredBackgroundColorValue, UIButton::PRESSED);\r
+        button->SetStyleForState(STYLE_BACKGROUND_COLOR, 0xffffffff, UIButton::PRESSED);\r
+        button->SetStyleForState(STYLE_BACKGROUND_OPA, 0x00, UIButton::PRESSED);\r
         button->SetOnClickListener(clickListener);\r
         return button;\r
     }\r
@@ -139,9 +128,9 @@ namespace OHOS
     }\r
 \r
     // 设置标签\r
-    UILabel *SoundAndVibrationView::SetUpLabel(LabelConfig &labelConfig)\r
+    UILabelExt *SoundAndVibrationView::SetUpLabel(LabelConfig &labelConfig)\r
     {\r
-        UILabel *label = new UILabel();\r
+        UILabelExt *label = new UILabelExt();\r
         if (label == nullptr)\r
         {\r
             return nullptr;\r
@@ -149,9 +138,10 @@ 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_CENTER);\r
+        //label->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);\r
+        label->SetRollSpeed(40);\r
         label->SetFont(DEFAULT_VECTOR_FONT_FILENAME, labelConfig.fontSize);\r
         return label;\r
     }\r
@@ -189,19 +179,19 @@ namespace OHOS
     /// @return true 初始化成功 false 初始化失败\r
     bool SoundAndVibrationView::InitSoundAndVibrationViewTitleLabel(void)\r
     {\r
-        Title = new UILabel();\r
+        Title = new UILabelExt();\r
         if (Title == nullptr)\r
         {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SoundAndVibrationView::new Title fail!");\r
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SoundAndVibrationView::Title new fail!");\r
             return false;\r
         }\r
-        Title->SetPosition(158, 52);\r
+        Title->SetPosition(93, 52, 280, 40);\r
         Title->SetStyle(STYLE_TEXT_FONT, 30);\r
         Title->SetStyle(STYLE_LINE_HEIGHT, 35);\r
         Title->SetText("声音与震动");\r
-        Title->SetLineBreakMode(UILabel::LINE_BREAK_ADAPT);\r
+        Title->SetLineBreakMode(UILabel::LINE_BREAK_MARQUEE);\r
         Title->SetAlign(TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_CENTER);\r
-        Title->SetRollSpeed(6);\r
+        Title->SetRollSpeed(40);\r
         Title->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30);\r
 \r
         return true;\r
@@ -230,8 +220,8 @@ namespace OHOS
             return false;\r
         }\r
 \r
-        /* ---------------------------- MediaVolumeButton --------------------------- */\r
-        if (!SetUpButtonAndCheck(MEDIA_VOLUME_BUTTON, 43, 360, MediaVolumeButton, ButtonClick))\r
+        /* ---------------------------- VibrationReminderButton --------------------------- */\r
+        if (!SetUpButtonAndCheck(VIBRATION_REMINDER_BUTTON, 43, 360, VibrationReminderButton, ButtonClick))\r
         {\r
             return false;\r
         }\r
@@ -240,12 +230,6 @@ namespace OHOS
     }\r
 \r
     /// @brief 为指定的按钮设置属性并进行错误检查\r
-    /// @param viewId\r
-    /// @param x\r
-    /// @param y\r
-    /// @param button\r
-    /// @param listener\r
-    /// @return true 设置成功 false 设置失败\r
     bool SoundAndVibrationView::SetUpButtonAndCheck(const char *viewId, int x, int y, UIButton *&button, UIView::OnClickListener *listener)\r
     {\r
         ButtonConfig buttonconfig = {\r
@@ -255,7 +239,6 @@ namespace OHOS
             .h = 100,\r
             .ViewId = viewId,\r
             .BackgroundColorValue = 0xff191919,\r
-            .TriggeredBackgroundColorValue = 0xff29b862,\r
         };\r
 \r
         button = SetUpButton(buttonconfig, listener);\r
@@ -267,11 +250,12 @@ namespace OHOS
         return true;\r
     }\r
 \r
+    /*初始化声音与震动视图图片*/\r
     bool SoundAndVibrationView::InitSoundAndVibrationImageView()\r
     {\r
         ImageConfig imageconfig = {\r
             .x = 43,\r
-            .y = 480,\r
+            .y = 360,\r
             .w = 380,\r
             .h = 100,\r
             .ImageSrc = "/user/res/SETTING_BACKGROUND.bin",\r
@@ -284,7 +268,7 @@ namespace OHOS
             return false;\r
         }\r
 \r
-        imageconfig.y = 600;\r
+        imageconfig.y = 480;\r
         SilentModeImageView = SetUpImageVIew(imageconfig);\r
         if (SilentModeImageView == nullptr)\r
         {\r
@@ -313,16 +297,17 @@ namespace OHOS
         return true;\r
     }\r
 \r
+    /*初始化声音与震动视图标签*/\r
     bool SoundAndVibrationView::InitSoundAndVibrationLabel(void)\r
     {\r
         LabelConfig labelConfig = {\r
             .left = 90,\r
-            .top = 140,\r
-            .width = 120,\r
-            .height = 35,\r
+            .top = 152,\r
+            .width = 250,\r
+            .height = 40,\r
             .fontSize = 30,\r
             .lineHeigh = 35,\r
-            .lineBreakMode = UILabel::LINE_BREAK_ADAPT,\r
+            .lineBreakMode = UILabel::LINE_BREAK_MARQUEE,\r
         };\r
         /* ---------------------------- SystemVolumeLabel --------------------------- */\r
         labelConfig.text = "系统音量";\r
@@ -333,7 +318,7 @@ namespace OHOS
             return false;\r
         }\r
         /* ----------------------------- CallVolumeLabel ---------------------------- */\r
-        labelConfig.top = 260;\r
+        labelConfig.top = 272;\r
         labelConfig.text = "通话音量";\r
         CallVolumeLabel = SetUpLabel(labelConfig);\r
         if (CallVolumeLabel == nullptr)\r
@@ -341,18 +326,9 @@ namespace OHOS
             WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SoundAndVibrationView::CallVolumeLabel is nullptr!");\r
             return false;\r
         }\r
-        /* ---------------------------- MediaVolumeLabel ---------------------------- */\r
-        labelConfig.top = 380;\r
-        labelConfig.text = "媒体音量";\r
-        MediaVolumeLabel = SetUpLabel(labelConfig);\r
-        if (MediaVolumeLabel == nullptr)\r
-        {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SoundAndVibrationView::MediaVolumeLabel is nullptr!");\r
-            return false;\r
-        }\r
-        /* ------------------------- VibrationReminderLabel ------------------------- */\r
-        labelConfig.top = 513;\r
-        labelConfig.text = "震动提醒";\r
+        /* ---------------------------- VibrationReminderLabel ---------------------------- */\r
+        labelConfig.top = 392;\r
+        labelConfig.text = "震动模式";\r
         VibrationReminderLabel = SetUpLabel(labelConfig);\r
         if (VibrationReminderLabel == nullptr)\r
         {\r
@@ -360,7 +336,7 @@ namespace OHOS
             return false;\r
         }\r
         /* ----------------------------- SilentModeLabel ---------------------------- */\r
-        labelConfig.top = 620;\r
+        labelConfig.top = 512;\r
         labelConfig.text = "静音模式";\r
         SilentModeLabel = SetUpLabel(labelConfig);\r
         if (SilentModeLabel == nullptr)\r
@@ -369,62 +345,47 @@ namespace OHOS
             return false;\r
         }\r
         /* -------------------------------------------------------------------------- */\r
-        typedef struct\r
-        {\r
-            int top;\r
-            char text[100];\r
-        } LabelInfo;\r
-\r
-        LabelInfo labelInfo[] = {\r
-            {177, "闹钟、提醒、查找手表"},\r
-            {297, "手表通话"},\r
-            {417, "音乐、录音、训练"},\r
-            {657, "系统音量不受影响"},\r
-        };\r
-        for (int i = 0; i < (int)(sizeof(labelInfo) / sizeof(labelInfo[0])); i++)\r
-        {\r
-            LabelConfig labelConfig = {\r
-                .left = 90,\r
-                .top = labelInfo[i].top,\r
-                .width = 300,\r
-                .height = 35,\r
-                .fontSize = 20,\r
-                .lineHeigh = 23,\r
-                .text = labelInfo[i].text,\r
-                .lineBreakMode = UILabel::LINE_BREAK_ADAPT,\r
-            };\r
-\r
-            reminder[i] = SetUpLabel(labelConfig);\r
-            if (reminder[i] == nullptr)\r
-            {\r
-                WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SoundAndVibrationView::reminder[%d] is nullptr!", i);\r
-                return false;\r
-            }\r
-\r
-            reminder[i]->SetStyle(STYLE_BACKGROUND_COLOR, 0xff191919);\r
-            reminder[i]->SetStyle(STYLE_BACKGROUND_OPA, 0xff);\r
-            reminder[i]->SetTextColor(Color::GetColorFromRGBA(0xfd, 0xfd, 0xfd, 0x7f));\r
-        }\r
+        // typedef struct\r
+        // {\r
+        //     int top;\r
+        //     char text[100];\r
+        // } LabelInfo;\r
+\r
+        // LabelInfo labelInfo[] = {\r
+        //     {177, "闹钟、提醒、查找手表"},\r
+        //     {297, "手表通话"},\r
+        //     {417, "音乐、录音、训练"},\r
+        //     {657, "系统音量不受影响"},\r
+        // };\r
+        // for (int i = 0; i < (int)(sizeof(labelInfo) / sizeof(labelInfo[0])); i++)\r
+        // {\r
+        //     LabelConfig labelConfig = {\r
+        //         .left = 90,\r
+        //         .top = labelInfo[i].top,\r
+        //         .width = 300,\r
+        //         .height = 35,\r
+        //         .fontSize = 20,\r
+        //         .lineHeigh = 23,\r
+        //         .text = labelInfo[i].text,\r
+        //         .lineBreakMode = UILabel::LINE_BREAK_ADAPT,\r
+        //     };\r
+\r
+        //     reminder[i] = SetUpLabel(labelConfig);\r
+        //     if (reminder[i] == nullptr)\r
+        //     {\r
+        //         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SoundAndVibrationView::reminder[%d] is nullptr!", i);\r
+        //         return false;\r
+        //     }\r
+\r
+        //     reminder[i]->SetStyle(STYLE_BACKGROUND_COLOR, 0xff191919);\r
+        //     reminder[i]->SetStyle(STYLE_BACKGROUND_OPA, 0xff);\r
+        //     reminder[i]->SetTextColor(Color::GetColorFromRGBA(0xfd, 0xfd, 0xfd, 0x7f));\r
+        // }\r
         return true;\r
     }\r
 \r
     bool SoundAndVibrationView::InitSoundAndVibrationToggleButton(void)\r
     {\r
-        /* ---------------------- VibrationReminderToggleButton --------------------- */\r
-        VibrationReminderToggleButton = new UIToggleButton();\r
-        if (VibrationReminderToggleButton == nullptr)\r
-        {\r
-            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SoundAndVibrationView::VibrationReminderToggleButton new  fail!");\r
-            return false;\r
-        }\r
-        VibrationReminderToggleButton->SetPosition(298, 505, 100, 50);\r
-        VibrationReminderToggleButton->SetStyle(STYLE_BACKGROUND_OPA, 0x00);\r
-        VibrationReminderToggleButton->SetStyle(STYLE_BACKGROUND_COLOR, 0xff191919);\r
-        const char *ToggleButtonSelect = "/user/res/TOGGLEBUTTON_ON.bin";\r
-        const char *ToggleButtonUnSelect = "/user/res/TOGGLEBUTTON_OFF.bin";\r
-        VibrationReminderToggleButton->SetImages(ToggleButtonSelect, ToggleButtonUnSelect);\r
-        VibrationReminderToggleButtonChangeListener = new SoundAndVibrationViewOnChangeListener(reinterpret_cast<UIView *>(VibrationReminderToggleButton));\r
-        VibrationReminderToggleButton->SetOnChangeListener(VibrationReminderToggleButtonChangeListener);\r
         /* ------------------------- SilentModeToggleButton ------------------------- */\r
         SilentModeToggleButton = new UIToggleButton();\r
         if (SilentModeToggleButton == nullptr)\r
@@ -432,22 +393,17 @@ namespace OHOS
             WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SoundAndVibrationView::SilentModeToggleButton new  fail!");\r
             return false;\r
         }\r
-        SilentModeToggleButton->SetPosition(298, 625, 100, 50);\r
+        SilentModeToggleButton->SetPosition(298, 505, 100, 50);\r
         SilentModeToggleButton->SetStyle(STYLE_BACKGROUND_OPA, 0x00);\r
         SilentModeToggleButton->SetStyle(STYLE_BACKGROUND_COLOR, 0xff191919);\r
+        const char *ToggleButtonSelect = "/user/res/TOGGLEBUTTON_ON.bin";\r
+        const char *ToggleButtonUnSelect = "/user/res/TOGGLEBUTTON_OFF.bin";\r
         SilentModeToggleButton->SetImages(ToggleButtonSelect, ToggleButtonUnSelect);\r
-        SilentModeToggleButtonChangeListener = new SoundAndVibrationViewOnChangeListener(reinterpret_cast<UIView *>(SilentModeToggleButton));\r
+        UICheckBox::OnChangeListener * SilentModeToggleButtonChangeListener = static_cast<UICheckBox::OnChangeListener *>(SoundAndVibrationPresenter::GetInstance());\r
         SilentModeToggleButton->SetOnChangeListener(SilentModeToggleButtonChangeListener);\r
         return true;\r
     }\r
 \r
-    /// @brief 获取"震动提醒"按钮开,关状态\r
-    /// @param  void\r
-    /// @return true 开 false 关\r
-    bool SoundAndVibrationView::GetVibrationReminderToggleButtonState(void)\r
-    {\r
-        return VibrationReminderToggleButton->GetState();\r
-    }\r
 \r
     /// @brief 获取"静音模式"按钮开,关状态\r
     /// @param  void\r
@@ -457,12 +413,6 @@ namespace OHOS
         return SilentModeToggleButton->GetState();\r
     }\r
 \r
-    /// @brief 设置"震动提醒"按钮开,关状态\r
-    /// @param  value\r
-    void SoundAndVibrationView::SetVibrationReminderToggleButtonState(bool value)\r
-    {\r
-        VibrationReminderToggleButton->SetState(value);\r
-    }\r
 \r
     /// @brief 设置"静音模式"按钮开,关状态\r
     /// @param  value\r
@@ -471,11 +421,6 @@ namespace OHOS
         SilentModeToggleButton->SetState(value);\r
     }\r
 \r
-    /// @brief 获取"震动提醒"切换按钮\r
-    UIToggleButton *SoundAndVibrationView::GetVibrationReminderToggleButton(void)\r
-    {\r
-        return VibrationReminderToggleButton;\r
-    }\r
 \r
     /// @brief 获取"静音模式"切换按钮\r
     UIToggleButton *SoundAndVibrationView::GetSilentModeToggleButton(void)\r
@@ -509,10 +454,6 @@ namespace OHOS
         {\r
             return;\r
         }\r
-        if (SoundAndVibrationModel::GetInstance()->VibrationReminderToggleButtonStatusInit() == false)\r
-        {\r
-            return;\r
-        }\r
         if (SoundAndVibrationModel::GetInstance()->SilentModeToggleButtonStatusInit() == false)\r
         {\r
             return;\r
@@ -534,22 +475,21 @@ namespace OHOS
         SoundAndVibrationScrollView->Add(Title);\r
         SoundAndVibrationScrollView->Add(SystemVolumeButton);\r
         SoundAndVibrationScrollView->Add(CallVolumeButton);\r
-        SoundAndVibrationScrollView->Add(MediaVolumeButton);\r
+        SoundAndVibrationScrollView->Add(VibrationReminderButton);\r
         SoundAndVibrationScrollView->Add(VibrationReminderImageView);\r
         SoundAndVibrationScrollView->Add(SilentModeImageView);\r
         SoundAndVibrationScrollView->Add(SystemVolumeLabel);\r
         SoundAndVibrationScrollView->Add(CallVolumeLabel);\r
-        SoundAndVibrationScrollView->Add(MediaVolumeLabel);\r
+        SoundAndVibrationScrollView->Add(VibrationReminderLabel);\r
         SoundAndVibrationScrollView->Add(VibrationReminderLabel);\r
         SoundAndVibrationScrollView->Add(SilentModeLabel);\r
-        SoundAndVibrationScrollView->Add(reminder[0]);\r
-        SoundAndVibrationScrollView->Add(reminder[1]);\r
-        SoundAndVibrationScrollView->Add(reminder[2]);\r
-        SoundAndVibrationScrollView->Add(reminder[3]);\r
+        // SoundAndVibrationScrollView->Add(reminder[0]);\r
+        // SoundAndVibrationScrollView->Add(reminder[1]);\r
+        // SoundAndVibrationScrollView->Add(reminder[2]);\r
+        // SoundAndVibrationScrollView->Add(reminder[3]);\r
         SoundAndVibrationScrollView->Add(nextImageView[0]);\r
         SoundAndVibrationScrollView->Add(nextImageView[1]);\r
         SoundAndVibrationScrollView->Add(nextImageView[2]);\r
-        SoundAndVibrationScrollView->Add(VibrationReminderToggleButton);\r
         SoundAndVibrationScrollView->Add(SilentModeToggleButton);\r
         RootView::GetInstance()->Add(SoundAndVibrationScrollView);\r
         Draw();\r
index daa9e56..2fd144f 100644 (file)
@@ -2,7 +2,7 @@
  * @Author: luozheng 1732036298@qq.com
  * @Date: 2024-04-08 18:40:09
  * @LastEditors: luozheng 1732036298@qq.com
- * @LastEditTime: 2024-04-16 09:48:10
+ * @LastEditTime: 2024-04-18 18:42:24
  * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/weather/src/WeatherModel.cpp
  */
 #include "weather/include/WeatherModel.h"
@@ -164,7 +164,7 @@ namespace OHOS
     std::string WeatherModel::GetWeatherArea()
     {
         std::string city = Weather_data_t_address.city;
-        std::string subLocality = Weather_data_t_address.city;
+        std::string subLocality = Weather_data_t_address.subLocality;
         return (city + subLocality);
     }
 
index 30deed2..322bcc6 100644 (file)
@@ -217,6 +217,7 @@ void startup_post_init_task(void)
 
     initScreenBrightness();
     initializeScreenDuration();
+    initializeRaiseToWake();
 
     LOS_Msleep(5000);
     if ( poweron_cat1_on_bootup_flag() )