增加产测界面的滑动退出
authorCaisking <Casiking@zhihuishixun.com>
Wed, 20 Aug 2025 09:47:34 +0000 (17:47 +0800)
committerCaisking <Casiking@zhihuishixun.com>
Wed, 20 Aug 2025 09:47:34 +0000 (17:47 +0800)
code/sdk/zhihui/UI/producttest/include/testQRCode.h
code/sdk/zhihui/UI/producttest/src/testQRCode.cpp

index fdebf65..5d1cc1f 100644 (file)
@@ -38,6 +38,7 @@ namespace OHOS
         bool initViewStatus{false};
         UILabel *Title{nullptr};           // 标题
         UIQrcode *QRCodeView{nullptr};     // 二维码视图
+        UILabelButtonExt *labelButton_next{nullptr}; // 退出按钮
     };
 }
 
index 7dbd7c6..d46ec43 100644 (file)
@@ -12,6 +12,7 @@
 #include "producttest/include/testQRCode.h"
 #include "producttest/include/testView.h"
 #include "producttest/include/testModel.h"
+#include "producttest/include/testabout.h"
 #include "components/ui_qrcode.h"
 #include "components/ui_scroll_view.h"
 #include "components/ui_label.h"
@@ -57,6 +58,11 @@ namespace OHOS
             delete QRCodeView;
             QRCodeView = nullptr;
         }
+        if (labelButton_next)
+        {
+            delete labelButton_next;
+            labelButton_next = nullptr;
+        }
         initViewStatus = false;
     }
 
@@ -93,6 +99,15 @@ namespace OHOS
         testQRCodeScrollView->SetTouchable(true);
         testQRCodeScrollView->SetDraggable(true);
 
+        // 设置拖拽监听器,实现滑动退出功能
+        UIView::OnDragListener *draglistener = static_cast<UIView::OnDragListener *>(testPresenter::GetInstance());
+        if (draglistener == nullptr)
+        {
+            WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "testQRCodeView::draglistener can not be nullptr!");
+            return false;
+        }
+        testQRCodeScrollView->SetOnDragListener(draglistener);
+
         // 创建标题
         Title = new UILabel();
         if (Title == nullptr)
@@ -130,6 +145,10 @@ namespace OHOS
 
         testQRCodeScrollView->Add(QRCodeView);
 
+        // 创建退出按钮
+        // labelButton_next = testAboutView::GetInstance()->init_button_next(167, 378, Test_ViewMapper_t[id].viewid_str_next);
+        // testQRCodeScrollView->Add(labelButton_next);
+
         return true;
     }