From: Caisking <3449750381@qq.com> Date: Wed, 2 Oct 2024 08:34:49 +0000 (+0800) Subject: 系统:修改Slice栈;保证里面保留默认SliceId X-Git-Url: http://git.snicker.com.cn/css/static/gitweb.css?a=commitdiff_plain;h=570d0dbb5ead4533ae63ea28db06a773e7632f4f;p=mirrors%2FFD230.git 系统:修改Slice栈;保证里面保留默认SliceId --- diff --git a/code/sdk/application/wearable/nativeabilityfwk/include/Ability.h b/code/sdk/application/wearable/nativeabilityfwk/include/Ability.h index 56cea10b6..5db5bcd6c 100755 --- a/code/sdk/application/wearable/nativeabilityfwk/include/Ability.h +++ b/code/sdk/application/wearable/nativeabilityfwk/include/Ability.h @@ -92,11 +92,7 @@ public: /// @param priority 切换优先级 bool Back(const TransitionType transitionId = TransitionType::TRANSITION_INVALID, const uint16_t priority = gSliceDefaultPriority) { - /* - if (backStack_.empty()) { - backStack_.push(defaultSliceId_); // 将默认主界面的 ID 推入栈中 - } - */ + if (!backStack_.empty()) { uint16_t preSlice = backStack_.top(); backStack_.pop(); @@ -105,7 +101,8 @@ public: } else { - // 当backStack为空时,退回到defaultSliceId_ + backStack_.push(defaultSliceId_); // 将默认主界面的 ID 推入栈中 + // 退回到defaultSliceId_ ChangeSlice(defaultSliceId_, transitionId, priority); return false; // 返回false表示无前一个slice,退回到默认slice } @@ -182,6 +179,9 @@ public: { backStack_.pop(); } + if (backStack_.empty()) { + backStack_.push(defaultSliceId_); // 将默认主界面的 ID 推入栈中 + } } /*打印栈中元素*/