From: Caisking <3449750381@qq.com> Date: Sat, 10 Aug 2024 03:51:40 +0000 (+0800) Subject: 修改遥控拍照的析构适配 X-Git-Tag: release_V1.2.70_20241020_135402~679^2~17 X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=e7f13bb69977f230d9be3be9d6235dc708871251;p=mirrors%2FFD230.git 修改遥控拍照的析构适配 --- diff --git a/code/sdk/application/wearable/fd230app/nativeui/takephotos/src/TakephotosView.cpp b/code/sdk/application/wearable/fd230app/nativeui/takephotos/src/TakephotosView.cpp index d4cee4d8e..9e98813bc 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/takephotos/src/TakephotosView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/takephotos/src/TakephotosView.cpp @@ -22,7 +22,14 @@ namespace OHOS TakephotosView::~TakephotosView() { - DeInit(); + // DeInit(); + + creamAnimator->Stop(); + smileAnimator->Start(); + + UIViewGroup *tmpGroup = dynamic_cast(container_); + UIViewGroup::RemoveAndDeleteAllRecursively(tmpGroup); + g_pTakephotosView = nullptr; } @@ -140,7 +147,9 @@ namespace OHOS creamView->Add(labelnote_); creamView->Add(buttongo); - RootView::GetInstance()->Add(creamView); + // RootView::GetInstance()->Add(creamView); + container_->Add(creamView); + creamView->SetDraggable(true); creamView->SetTouchable(true); @@ -190,7 +199,9 @@ namespace OHOS takeView->Add(labelclick_); takeView->Add(buttontake); - RootView::GetInstance()->Add(takeView); + // RootView::GetInstance()->Add(takeView); + container_->Add(takeView); + takeView->SetDraggable(true); takeView->SetTouchable(true); @@ -208,32 +219,23 @@ namespace OHOS void TakephotosView::SetPopupViewStatus(PopupPhoto view, bool status) { WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SetPopupViewStatus %d", view); - UIView *popupView = nullptr; + if (view == PopupPhoto::CreamPopup) { - popupView = creamView; + creamView->SetVisible(true); + takeView->SetVisible(false); + creamAnimator->Start(); smileAnimator->Stop(); } else if (view == PopupPhoto::TakePopup) { - popupView = takeView; + takeView->SetVisible(true); + creamView->SetVisible(false); + smileAnimator->Start(); creamAnimator->Stop(); } - - if (popupView == nullptr) - { - WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "PopupView is NULL"); - return; - } - - if (container_ != nullptr) - { - container_->SetVisible(!status); - } - - popupView->SetVisible(status); } void TakephotosView::OnStart() @@ -248,7 +250,6 @@ namespace OHOS ShowTakeView(); PreLoad(); - RootView::GetInstance()->Add(container_); SetContainerView(container_); RootView::GetInstance()->SetOnKeyActListener(presenter_);