{
ThunderBirdModel::GetInstance()->StopCountUpTimer();//每次进入哄睡界面都停止定时器
if (group == nullptr) { return; }
+
+ // 记录上一个视图状态(在switch之前保存,用于判断是否从VIEW_5切换到VIEW_4)
+ int16_t previousView = lastView;
+ lastView = showView;
if (TextLabel)
{ TextLabel->SetVisible(false);
TextLabel->SetLineBreakMode(UILabel::LINE_BREAK_ELLIPSIS);
ThunderBirdModel::GetInstance()->LowFrequence();//减低视频帧率
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ThunderBirdLullabyView::Show: THUNDERBIRD_LULLABYVIEW_4");
+ // 重置故事模式finished标志,确保每次进入故事模式时标志位是干净的
+ ThunderBirdModel::GetInstance()->ResetStoryModeFinished();
+
// 启动故事模式超时定时器(1分钟无文本切换则退出)
ThunderBirdModel::GetInstance()->StartStoryModeTimeoutTimer();
if (TextLabel)
{
TextLabel->SetPosition(35, 64, 300, 42);
- // å¦\82æ\9e\9cæ\9c\89ä¿\9då\98ç\9a\84æ\96\87æ\9c¬ï¼\8cå\88\99æ\81¢å¤\8då®\83ï¼\9bå\90¦å\88\99使ç\94¨é»\98认文本
- if (!savedView4Text.empty()) {
+ // å\8fªæ\9c\89ä»\8eTHUNDERBIRD_LULLABYVIEW_5å\88\87æ\8d¢å\88°THUNDERBIRD_LULLABYVIEW_4æ\97¶æ\89\8dæ\81¢å¤\8dä¿\9då\98ç\9a\84文本
+ if (previousView == THUNDERBIRD_LULLABYVIEW_5 && !savedView4Text.empty()) {
TextLabel->SetText(savedView4Text.c_str());
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ThunderBirdLullabyView::Show: 恢复保存的文本: %s", savedView4Text.c_str());
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ThunderBirdLullabyView::Show: 从VIEW_5切换到VIEW_4,恢复保存的文本: %s", savedView4Text.c_str());
// 恢复后清空保存的文本,以便下次进入时使用默认文本
savedView4Text.clear();
} else {
TextLabel->SetText("正在准备故事...");//设置初始文字
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ThunderBirdLullabyView::Show: 使用默认文本: 正在准备故事...");
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ThunderBirdLullabyView::Show: 使用默认文本: 正在准备故事... (previousView=%d)", previousView);
}
TextLabel->SetLineBreakMode(UILabel::LINE_BREAK_MARQUEE);
TextLabel->SetShadowOffsetX(2);