Flutter StatefulWidget传参注意事项

直接使用父类传递的参数widget.menusData

class ZmXzGridView extends StatefulWidget {
  List menusData=new List();
  ZmXzGridView({Key key,this.menusData}):super(key:key);

  @override
  State<StatefulWidget> createState() {
    // TODO: implement createState
    return ZmXzGridViewState();
  }
}

class ZmXzGridViewState extends State<ZmXzGridView> {

  /*List menusData;
  ZmXzGridViewState(this.menusData);*/

  String imgUrl;
  int curIndex = 0;

  void _updateTuan(Menu menu, int index) {
    setState(() {
      if (curIndex != index) {
        curIndex = index;
        menu.select = true;
      }
    });
  }

  @override
  Widget build(BuildContext context) {
    return GridView.count(
      padding: EdgeInsets.zero,
      shrinkWrap: true,
      //水平子Widget之间间距
      crossAxisSpacing: 10.0,
      //垂直子Widget之间间距
      mainAxisSpacing: 10.0,
      //一行的Widget数量
      crossAxisCount: 3,
      //子Widget宽高比例
      childAspectRatio: 1.4,
      //子Widget列表
      children: getWidgetList(widget.menusData.length,widget.menusData),
    );
  }
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容