Вы можете создать свой собственный StatefullWidget для группы следующим образом:
class WidgetGroup extends StatefulWidget {
WidgetGroupState createState() => WidgetGroupState();
}
class WidgetGroupState extends State<WidgetGroup> {
bool _showB = false;
@override
Widget build(BuildContext context) {
return Column(
children: <Widget>[
WidgetA(),
FlatButton(onPressed: () => setState(() => _showB = !_showB )),
if (_showB) WidgetB(),
],
);
}
}
Затем вы можете использовать этот виджет везде, где вам нужно: в ListView, Column, Row, в основном в любом виджете как ребенок.
В вашем случае у вас будет что-то вроде этого:
Column(
children: <Widget>[
WidgetGroup(),
Text('Something unrelated'),
],
);
Надеюсь, это решит вашу проблему.