/// @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();
}
else
{
- // 当backStack为空时,退回到defaultSliceId_
+ backStack_.push(defaultSliceId_); // 将默认主界面的 ID 推入栈中
+ // 退回到defaultSliceId_
ChangeSlice(defaultSliceId_, transitionId, priority);
return false; // 返回false表示无前一个slice,退回到默认slice
}
{
backStack_.pop();
}
+ if (backStack_.empty()) {
+ backStack_.push(defaultSliceId_); // 将默认主界面的 ID 推入栈中
+ }
}
/*打印栈中元素*/