diff --git a/lib/container/container_manager.dart b/lib/container/container_manager.dart
index 30b1499d16e07295d9c50357de724e5311d7575b..71a96abbabc549515f77c602794cafd4f02288c2 100755
--- a/lib/container/container_manager.dart
+++ b/lib/container/container_manager.dart
@@ -69,7 +69,6 @@ class ContainerManagerState extends State<BoostContainerManager> {
   final List<BoostContainer> _offstage = <BoostContainer>[];
 
   List<_ContainerOverlayEntry> _leastEntries;
-
   BoostContainer _onstage;
   bool _foreground = true;
 
@@ -158,15 +157,20 @@ class ContainerManagerState extends State<BoostContainerManager> {
       }
     }
 
-    final List<BoostContainer> containers = <BoostContainer>[];
-    containers.addAll(_offstage);
+    final List<Widget> containers = <Widget>[];
+    containers.addAll(_offstage.map<Widget>(
+      (BoostContainer container) => HeroControllerScope(
+        controller: null,
+        child: container
+      )
+    ));
 
     assert(_onstage != null, 'Should have a least one BoostContainer');
     containers.add(_onstage);
 
     _leastEntries = containers
         .map<_ContainerOverlayEntry>(
-            (BoostContainer container) => _ContainerOverlayEntry(container))
+            (Widget container) => _ContainerOverlayEntry(container))
         .toList(growable: false);
 
     overlayState.insertAll(_leastEntries);
@@ -336,7 +340,7 @@ class ContainerManagerState extends State<BoostContainerManager> {
 }
 
 class _ContainerOverlayEntry extends OverlayEntry {
-  _ContainerOverlayEntry(BoostContainer container)
+  _ContainerOverlayEntry(Widget container)
       : super(
           builder: (BuildContext ctx) => container,
           opaque: true,