diff --git a/lib/widget/live/live_room_user_header.dart b/lib/widget/live/live_room_user_header.dart index e9fb077..bc325db 100644 --- a/lib/widget/live/live_room_user_header.dart +++ b/lib/widget/live/live_room_user_header.dart @@ -138,11 +138,20 @@ class LiveRoomUserHeader extends StatelessWidget { if (hasGuests) SizedBox(height: 15.w), GestureDetector( onTap: () async { - SmartDialog.dismiss(); - Get.back(); - overlayController.hide(); await roomController.leaveChannel(); // 隐藏 overlay + SmartDialog.dismiss(); + // 退出房间时清空RTM消息 + if (Get.isRegistered()) { + final roomController = Get.find(); + roomController.chatMessages.clear(); + } + // 如果还没有执行 pop,手动调用 Get.back() + Get.back(); + // 等待页面关闭后再显示小窗口,确保小窗口能正确显示 + Future.delayed(const Duration(milliseconds: 200), () { + overlayController.hide(); + }); }, child: Row( mainAxisAlignment: MainAxisAlignment.center,