Como definir o estado de outro widget?

Estou tentando alterar o estado de um widget diferente no Flutter. Por exemplo, no exemplo a seguir, defino o estado após alguns segundos.

Aqui está o código para isso:

class _MyAppState extends State<MyApp> {

  int number = 1;

  @override
  void initState() {
    super.initState();
    new Future.delayed(new Duration(seconds: 5)).then((_) {
      this.setState(() => number = 2);
      print("Changed");
    });
  }

  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      body: new Center(
        child: new FlatButton(
          color: Colors.blue,
          child: new Text("Next Page"),
          onPressed: () {
            Navigator.of(context).push(new MaterialPageRoute(
              builder: (BuildContext context) => new StatefulBuilder(builder: (BuildContext context, setState) =>new MySecondPage(number))
            ));
          },
        ),
      ),
    );
  }
}

Eu tentei usar umInheritedWidget, mas isso não funcionará, a menos que envolva meu widget de nível superior, o que não é viável para o que estou tentando fazer (o código acima é uma simplificação do que estou tentando alcançar).

Alguma idéia de qual é a melhor maneira de conseguir isso em Flutter?

questionAnswers(1)

yourAnswerToTheQuestion