增加动态表盘,视频表盘,表盘切换适配;优化长按进入效果
authorCaisking <3449750381@qq.com>
Tue, 12 Mar 2024 11:48:03 +0000 (19:48 +0800)
committerCaisking <3449750381@qq.com>
Tue, 12 Mar 2024 11:48:03 +0000 (19:48 +0800)
19 files changed:
code/sdk/application/wearable/fd230app/nativelauncher/include/UiConfig.h
code/sdk/application/wearable/fd230app/nativeui/applist/src/ApplistModel.cpp
code/sdk/application/wearable/fd230app/nativeui/dialupdate/src/DialUpdateView.cpp
code/sdk/application/wearable/fd230app/nativeui/main/include/dial/DialModelSPO2.h
code/sdk/application/wearable/fd230app/nativeui/main/src/MainPresenterSample.cpp
code/sdk/application/wearable/fd230app/nativeui/main/src/MainViewSample.cpp
code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/APPLIST_CALLER_IMAGE.bin
code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/Dynamic_cat.bin [new file with mode: 0644]
code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/KUMI.bin
code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/classic.bin [new file with mode: 0644]
code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/dog.bin
code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/galaxy.bin
code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/jellyfish.bin [new file with mode: 0644]
code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/panda.bin [new file with mode: 0644]
code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dialupdate/Dynamic_cat.bin [new file with mode: 0644]
code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dialupdate/classic.bin [new file with mode: 0644]
code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dialupdate/jellyfish.bin [new file with mode: 0644]
code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dialupdate/panda.bin [new file with mode: 0644]
code/sdk/middleware/services/gui/uikit/utils/interfaces/innerkits/graphic_config.h

index 2d76eee..87a4d50 100644 (file)
@@ -280,7 +280,7 @@ namespace OHOS
     static constexpr const char *PNG_APPLIST_HEART_IMAGE = APP_RES_PATH "/APPLIST_HEART.bin";           // 心率
     static constexpr const char *PNG_APPLIST_SETTING_IMAGE = APP_RES_PATH "/APPLIST_SETTING.bin";       // 设置
     static constexpr const char *PNG_APPLIST_CALLER_IMAGE = APP_RES_PATH "/APPLIST_CALLER_IMAGE.bin";   // 打电话
-    static constexpr const char *PNG_APPLIST_CALLLOG_IMAGE = APP_RES_PATH "/APPLIST_CALLLOG.bin";       // 1通话记录
+    static constexpr const char *PNG_APPLIST_CALLLOG_IMAGE = APP_RES_PATH "/APPLIST_CALLLOG.bin";       // 通话记录
     static constexpr const char *PNG_APPLIST_COMPASS_IMAGE = APP_RES_PATH "/APPLIST_COMPASS_IMAGE.bin"; // 指南针
     static constexpr const char *PNG_APPLIST_WEATHER_IMAGE = APP_RES_PATH "/APPLIST_WEATHER_IMAGE.bin"; // 天气
     static constexpr const char *PNG_APPLIST_RECORD_IMAGE = APP_RES_PATH "/APPLIST_RECORD_IMAGE.bin";   // 录音
index fe0b8af..254aed5 100644 (file)
@@ -30,7 +30,7 @@ namespace OHOS
         {VIEW_SETTING, PNG_APPLIST_SETTING_IMAGE, PNG_APPLIST_SETTING_IMAGE, "设置", nullptr},
         {VIEW_DIALUPDATE, PNG_APPLIST_UI_SAMPLE_IMAGE, PNG_APPLIST_UI_SAMPLE_IMAGE, "表盘切换", nullptr},
         {VIEW_CALLER_LOG, PNG_APPLIST_CALLLOG_IMAGE, PNG_APPLIST_CALLLOG_IMAGE, "通话记录", nullptr},
-        {VIEW_PHONE, PNG_APPLIST_CALLLOG_IMAGE, PNG_APPLIST_PHONE_IMAGE, "电话", nullptr},
+        {VIEW_PHONE, PNG_APPLIST_CALLER_IMAGE, PNG_APPLIST_CALLER_IMAGE, "电话", nullptr},
 #ifdef SUPPORT_ALIPAY_SEC
         {VIEW_MAIN_ALIPAY, PNG_APPLIST_ALIPAY_IMAGE, PNG_APPLIST_ALIPAY_IMAGE, "支付宝", nullptr},
 #endif
index df9cd3b..e73b277 100644 (file)
@@ -29,7 +29,7 @@ namespace OHOS
     {
         g_pDialUpdateView = this;
     }
-
+    UILabelButtonExt *Button[10] = {NULL};
     DialUpdateView::~DialUpdateView()
     {
         if (container_ != nullptr)
@@ -38,30 +38,14 @@ namespace OHOS
             delete container_;
             container_ = nullptr;
         }
-        if (label1_ != nullptr)
-        {
-            delete label1_;
-            label1_ = nullptr;
-        }
-        if (image1_ != nullptr)
-        {
-            delete image1_;
-            image1_ = nullptr;
-        }
-        if (button3_ != nullptr)
-        {
-            delete button3_;
-            button3_ = nullptr;
-        }
-        if (button1_ != nullptr)
-        {
-            delete button1_;
-            button1_ = nullptr;
-        }
-        if (button2_ != nullptr)
+        
+        for(int i=0;i<dial_num;i++)
         {
-            delete button2_;
-            button2_ = nullptr;
+            if(Button[i]!=NULL)
+            {
+                delete Button[i];
+                Button[i]=NULL;
+            }
         }
         g_pDialUpdateView = nullptr;
     }
@@ -210,59 +194,56 @@ namespace OHOS
         // button2_->SetVisible(true);
     }
 
-    UILabelButtonExt* Button[10]={};
+   
     void DialUpdateView::init_button()
-    {   
-        //read_dial();
-        printf_dial();//dial_num
-        for(int i=0;i<dial_num;i++)
+    {
+        // read_dial();
+        printf_dial(); // dial_num
+        uint8_t fileid = DialUpdateModel::GetInstance()->GetDialConfigPath();
+        for (int i = fileid; i < dial_num + fileid; i++)
         {
-            Button[i] = new UILabelButtonExt();
+            Button[i % dial_num] = new UILabelButtonExt();
             if (Button == nullptr)
             {
                 WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SystemView::SystemUpgradeButtonExt new fail!");
             }
-            Button[i]->SetPosition(0, 0, Screen::GetInstance().GetWidth(), Screen::GetInstance().GetWidth());
-            Button[i]->SetStyle(STYLE_BACKGROUND_COLOR, Color::Black().full);
-            Button[i]->SetImagePosition(103, 103);
-            Button[i]->SetViewId(dialInfo_1[i].title);
-        //     uint32_t resId=5|( 0xfef << 20);
-        //     //uint32_t resId=1|( 0xfef << 20);
-        //     //ImageInfo* image = ImageCacheManager::GetInstance().LoadOneInMultiRes((uint8_t*)dialInfo_1[i].dialPath,resId);
-        //     // std::string str="user/res/dials/KUMI.bin";
-        //     // FILE * fp = fopen(dialInfo_1[i].dialPath, "rb");
-        //     // if (fp == nullptr) 
-        //     // {
-        //     //     return;
-        //     // }
-        // //       ImageInfo* LoadOneInMultiRes(uint32_t resId, const std::string& file, FILE* userFP = nullptr,
-        // // bool isLongTerm = false, int offset = 0);
-        //     ImageInfo* image = ImageCacheManager::GetInstance().LoadOneInMultiRes(resId,dialInfo_1[i].thumbnailPath);//,fp,false,dialInfo_1[i].imageOffset);//dialInfo_1[i].dialPath);
-        //     if (image == nullptr) {
-        //         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "LoadAppImages %x  %s  fail", resId,dialInfo_1[1].thumbnailPath);
-        //        // return ;
-        //     }
-            //view->SetSrc(image);
+            Button[i % dial_num]->SetPosition(0, 0, Screen::GetInstance().GetWidth(), Screen::GetInstance().GetWidth());
+            Button[i % dial_num]->SetStyle(STYLE_BACKGROUND_COLOR, Color::Black().full);
+            Button[i % dial_num]->SetImagePosition(103, 103);
+            Button[i % dial_num]->SetViewId(dialInfo_1[i % dial_num].title);
+            //     uint32_t resId=5|( 0xfef << 20);
+            //     //uint32_t resId=1|( 0xfef << 20);
+            //     //ImageInfo* image = ImageCacheManager::GetInstance().LoadOneInMultiRes((uint8_t*)dialInfo_1[i].dialPath,resId);
+            //     // std::string str="user/res/dials/KUMI.bin";
+            //     // FILE * fp = fopen(dialInfo_1[i].dialPath, "rb");
+            //     // if (fp == nullptr)
+            //     // {
+            //     //     return;
+            //     // }
+            // //       ImageInfo* LoadOneInMultiRes(uint32_t resId, const std::string& file, FILE* userFP = nullptr,
+            // // bool isLongTerm = false, int offset = 0);
+            //     ImageInfo* image = ImageCacheManager::GetInstance().LoadOneInMultiRes(resId,dialInfo_1[i].thumbnailPath);//,fp,false,dialInfo_1[i].imageOffset);//dialInfo_1[i].dialPath);
+            //     if (image == nullptr) {
+            //         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "LoadAppImages %x  %s  fail", resId,dialInfo_1[1].thumbnailPath);
+            //        // return ;
+            //     }
+            // view->SetSrc(image);
 
-            
-            //Button[i]->SetImageSrc(dialInfo_1[i].dialPath,dialInfo_1[i].dialPath);
-            Button[i]->SetImageSrc(dialInfo_1[i].thumbnailPath,dialInfo_1[i].thumbnailPath);
-            Button[i]->SetText(dialInfo_1[i].title);
-            Button[i]->SetAlign(TEXT_ALIGNMENT_CENTER);
-            Button[i]->SetLabelPosition(0, -380);
-            Button[i]->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30);
-            Button[i]->SetStyleForState(STYLE_BORDER_COLOR, Color::Black().full, UIButton::PRESSED);
-            Button[i]->SetStyleForState(STYLE_BACKGROUND_COLOR, Color::Black().full, UIButton::PRESSED);
+            // Button[i]->SetImageSrc(dialInfo_1[i].dialPath,dialInfo_1[i].dialPath);
+            Button[i % dial_num]->SetImageSrc(dialInfo_1[i % dial_num].thumbnailPath, dialInfo_1[i % dial_num].thumbnailPath);
+            Button[i % dial_num]->SetText(dialInfo_1[i % dial_num].title);
+            Button[i % dial_num]->SetAlign(TEXT_ALIGNMENT_CENTER);
+            Button[i % dial_num]->SetLabelPosition(0, -380);
+            Button[i % dial_num]->SetFont(DEFAULT_VECTOR_FONT_FILENAME, 30);
+            Button[i % dial_num]->SetStyleForState(STYLE_BORDER_COLOR, Color::Black().full, UIButton::PRESSED);
+            Button[i % dial_num]->SetStyleForState(STYLE_BACKGROUND_COLOR, Color::Black().full, UIButton::PRESSED);
             UIView::OnClickListener *buttonClick = static_cast<UIView::OnClickListener *>(DialUpdatePresenter::GetInstance());
-            Button[i]->SetOnClickListener(buttonClick);
-        // button2_->SetOnClickListener(button2Click);
-            container_->Add( Button[i]);
+            Button[i % dial_num]->SetOnClickListener(buttonClick);
+            // button2_->SetOnClickListener(button2Click);
+            container_->Add(Button[i % dial_num]);
         }
-      
-
     }
-    UICardPage *cade[10]={nullptr};
-
+    UICardPage *cade[10] = {nullptr};
 
     void DialUpdateView::OnStart()
     {
@@ -270,28 +251,25 @@ namespace OHOS
         View<DialUpdatePresenter>::OnStart();
         BaseView::RootView(Color::Red().full);
 
-        if (container_ == nullptr) 
+        if (container_ == nullptr)
         {
-        container_ = new UISwipeView(UISwipeView::HORIZONTAL);
-        container_->SetPosition(0, 0, Screen::GetInstance().GetWidth(), Screen::GetInstance().GetHeight());
-        container_->SetThrowDrag(true);
-        container_->SetStyle(STYLE_BACKGROUND_COLOR, Color::Black().full);
-        container_->SetStyle(STYLE_BACKGROUND_OPA, OPA_OPAQUE);
-        container_->SetBlankSize(0);
-        container_->SetReboundSize(200); // 200: rebound size
-        container_->SetElastic(true);
+            container_ = new UISwipeView(UISwipeView::HORIZONTAL);
+            container_->SetPosition(0, 0, Screen::GetInstance().GetWidth(), Screen::GetInstance().GetHeight());
+            container_->SetThrowDrag(true);
+            container_->SetStyle(STYLE_BACKGROUND_COLOR, Color::Black().full);
+            container_->SetStyle(STYLE_BACKGROUND_OPA, OPA_OPAQUE);
+            container_->SetBlankSize(0);
+            container_->SetReboundSize(200); // 200: rebound size
+            container_->SetElastic(true);
         }
 
-
         init_button();
 
-       
         RootView::GetInstance()->Add(container_);
 
         WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "mainSwipeGroup new fail");
 
-        //container_->RegisterSwipeCallback(callback);
-     
+        // container_->RegisterSwipeCallback(callback);
     }
     void DialUpdateView::OnSetUpView()
     {
index 54f3cc2..d7b579c 100644 (file)
@@ -27,7 +27,7 @@ namespace OHOS
         int GetSPO2Data();
 
     private:
-        float SPO2_ = 0; // 97.0: default SPO2 value as reference
+        float SPO2_ = 97; // 97.0: default SPO2 value as reference
     };
 }
 #endif
index e051d55..7b3502d 100644 (file)
@@ -102,7 +102,7 @@ namespace OHOS
     {
         UNUSED(event);
         WEARABLE_LOGD(WEARABLE_LOG_MODULE_APP, "OnLongPress OnLongPress");
-        NativeAbility::GetInstance().ChangeSlice(VIEW_DIALUPDATE, TRANSITION_ZOOM);
+        NativeAbility::GetInstance().ChangeSlice(VIEW_DIALUPDATE);
         return true;
     }
     bool MainPresenterSample::OnClick(UIView &view, const ClickEvent &event)
index f9982ea..98bdb09 100644 (file)
@@ -332,7 +332,7 @@ namespace OHOS
     {
 #if USE_OFFLINE_DIAL
         mainClockView = new DialViewGroup();
-#if 1
+#if 0
         std::string filePath = dynamic_cast<MainPresenterSample *>(presenter_)->GetDialPath();
         if (filePath.size() == 0)
         {
@@ -369,12 +369,13 @@ namespace OHOS
         changebut->SetStyleForState(STYLE_BACKGROUND_OPA, 0x00, UIButton::PRESSED);
         changebut->SetStyleForState(STYLE_BORDER_COLOR, 0xfff3e8e8, UIButton::PRESSED);
         changebut->SetStyleForState(STYLE_BORDER_OPA, 0x00, UIButton::PRESSED);
+
         // Add the CallBack about events
-        UIView::OnLongPressListener *button1LongPress = static_cast<UIView::OnLongPressListener *>(MainPresenterSample::GetInstance());
-        changebut->SetOnLongPressListener(button1LongPress);
+        UIView::OnLongPressListener *buttonLongPress = static_cast<UIView::OnLongPressListener *>(MainPresenterSample::GetInstance());
+        mainClockView->SetOnLongPressListener(buttonLongPress);
         // Add to rootView
-        mainClockView->Add(changebut);
-        changebut->SetVisible(true);
+        //mainClockView->Add(changebut);
+        //changebut->SetVisible(true);
 #endif
         return mainClockView;
     }
index fe389b5..c711f66 100644 (file)
Binary files a/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/APPLIST_CALLER_IMAGE.bin and b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/APPLIST_CALLER_IMAGE.bin differ
diff --git a/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/Dynamic_cat.bin b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/Dynamic_cat.bin
new file mode 100644 (file)
index 0000000..8782cee
Binary files /dev/null and b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/Dynamic_cat.bin differ
index e9d202a..fdee3c4 100644 (file)
Binary files a/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/KUMI.bin and b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/KUMI.bin differ
diff --git a/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/classic.bin b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/classic.bin
new file mode 100644 (file)
index 0000000..78d1471
Binary files /dev/null and b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/classic.bin differ
index e74814c..2e8dc5d 100644 (file)
Binary files a/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/dog.bin and b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/dog.bin differ
index 3a6a4f6..3d03b52 100644 (file)
Binary files a/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/galaxy.bin and b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/galaxy.bin differ
diff --git a/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/jellyfish.bin b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/jellyfish.bin
new file mode 100644 (file)
index 0000000..3952682
Binary files /dev/null and b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/jellyfish.bin differ
diff --git a/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/panda.bin b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/panda.bin
new file mode 100644 (file)
index 0000000..33ae753
Binary files /dev/null and b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dials/panda.bin differ
diff --git a/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dialupdate/Dynamic_cat.bin b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dialupdate/Dynamic_cat.bin
new file mode 100644 (file)
index 0000000..170542c
Binary files /dev/null and b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dialupdate/Dynamic_cat.bin differ
diff --git a/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dialupdate/classic.bin b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dialupdate/classic.bin
new file mode 100644 (file)
index 0000000..891d7f7
Binary files /dev/null and b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dialupdate/classic.bin differ
diff --git a/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dialupdate/jellyfish.bin b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dialupdate/jellyfish.bin
new file mode 100644 (file)
index 0000000..099c271
Binary files /dev/null and b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dialupdate/jellyfish.bin differ
diff --git a/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dialupdate/panda.bin b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dialupdate/panda.bin
new file mode 100644 (file)
index 0000000..d610ed3
Binary files /dev/null and b/code/sdk/build/config/target_config/brandy/mk_fs_image/fd230/fs/user/res/dialupdate/panda.bin differ
index 54047ed..90c6d96 100755 (executable)
@@ -594,9 +594,9 @@ static constexpr uint8_t INDEV_DRAG_LIMIT = 10;
 /* Maximum depth of view nesting. The default value is <b>64</b>. */
 static constexpr uint8_t COMPONENT_NESTING_DEPTH = 64;
 /* Long-press event threshold. The default value is <b>1000</b> ms. */
-static constexpr uint16_t INDEV_LONG_PRESS_TIME = 1000;
+static constexpr uint16_t INDEV_LONG_PRESS_TIME = 50;
 /* Delay for reporting a press event on a draggable object. The default value is <b>100</b> ms. */
-static constexpr uint16_t INDEV_PRESS_TIME_IN_DRAG = 100;
+static constexpr uint16_t INDEV_PRESS_TIME_IN_DRAG = 50;
 /* Maximum number of bytes in a text that can be continuously displayed. The default value is <b>4096</b> bytes. */
 static constexpr uint16_t MAX_TEXT_LENGTH = 4096;
 /* Maximum value of the graphic display range. The default value is <b>16383px</b>. */