Вместо того, чтобы просто визуально скрыть виджет, вы можете показать пустой контейнер размером 0, например:
bool hide = true;
return Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
Text("test1",
style: TextStyle(fontSize: 10),
),
hide==true?Container():Visibility(
visible: false,
child: Text("test1",
style: TextStyle(fontSize: 10),
),
),
Text("test1",
style: TextStyle(fontSize: 10),
),
Text("test1",
style: TextStyle(fontSize: 10),
),
],
);
В этом примере, если переменная "hide" имеет значение true, он будет показывать пустой контейнер, а когда переменная "hide" - false, он будет отображать ваш невидимый текст.