import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:zhiying_comm/zhiying_comm.dart'; class MainPage extends StatefulWidget { MainPage({Key key}) : super(key: key); @override _MainPageState createState() => _MainPageState(); } class _MainPageState extends State { WidgetType _type = WidgetType.skeleton; @override void initState() { _reload(); super.initState(); } void _reload() { setState(() { _type = WidgetType.skeleton; }); Future.delayed(Duration(seconds: 3), () { setState(() { _type = WidgetType.normal; }); }); } List _createContent() { List list = List(); list.add(SliverToBoxAdapter( child: RaisedButton( onPressed: _reload, child: Text('重置'), ), )); list.addAll( WidgetFactory.create('home_banner', type: _type, isSliver: true)); list.addAll( WidgetFactory.create('home_goods', type: _type, isSliver: true)); list.addAll( WidgetFactory.create('home_goods', type: _type, isSliver: true)); list.addAll( WidgetFactory.create('home_goods', type: _type, isSliver: true)); return list; } @override Widget build(BuildContext context) { print('build'); return Scaffold( backgroundColor: Color(0xfff9f9f9), body: SafeArea( child: Container( child: CustomScrollView( slivers: _createContent(), ))), ); } }