1) Opacity :
The child’s opacity to zero but still renders it. So the child is hidden but takes space and you can interact with it.
Opacity(opacity: 0.0, child: Container(child: ));
2) Offstage :
Offstage renders the child widget off set the screen. This means that the widget is not rendered in the subtree and so doesn’t take any space.
Offstage(offstage: true, child: ));
3) Visibility :
child widget is not rendered in the subtree, and Flutter uses instead a shrinked sized box to replace it. The result is pretty much the same as with Offstage.
Visibility(visible: false, child: ));