zoukankan      html  css  js  c++  java
  • Flutter 获取网络数据及渲染列表

    还是通过Dio包调用远程接口获取数据,这里返回值为一个Future,这个对象支持一个等待回掉方法then

    示例代码如下:

    复制代码
    import 'package:flutter/material.dart';
    import 'package:dio/dio.dart';
     
    class TestPage extends StatefulWidget {
      @override
      _TestPageState createState() => _TestPageState();
    }
     
    class _TestPageState extends State<TestPage> {
        List formList;
        initState() {
          super.initState();
          getHttp().then((val){
            setState(() {
              formList = val['result'].toList();
            });
          });
        }
    
        Future getHttp() async{
         try{
          Response response;
          Dio dio = new Dio();
          response =await dio.get("https://www.easy-mock.com/mock/5d3914e09388917915bccb2e/shopapp/shopapp_dh");
          print(response);
          return response.data;
    
         }catch(e){
          return print(e);
         }
        }
    
        Widget buildGrid() {
          List<Widget> tiles = [];//先建一个数组用于存放循环生成的widget
          for(var item in formList) {
            tiles.add(
              new Column(
                  children: <Widget>[
                      Image.network(item['image'], 500,height: 100,fit: BoxFit.cover,),
                      Text(item['title'])
                  ]
              )
            );
          }
          return Column(
              children:tiles
          );
        }
    
        @override
        Widget build(BuildContext context) {
            return Scaffold(
                appBar: AppBar(
                    title: Text('循环渲染组件案例'),
                ),
                body: SingleChildScrollView(
                  child: Column(
                      children: <Widget>[
                        buildGrid(),
                      ],
                  )     
                )
            );
        }
    }
    复制代码

    效果图:

     

     
  • 相关阅读:
    arcgis对谷歌遥感影像拼接
    animation动画
    通过$ref设置样式
    Element drawer添加 滚动条 无法上下滚动
    ECharts 点击事件的 param参数
    解析后台参数
    .NET Core中具有多个实现的依赖注入实现
    玩转Firefox侧栏
    实用AutoHotkey功能展示
    利用7z实现一键解压
  • 原文地址:https://www.cnblogs.com/zxh1919/p/12932727.html
Copyright © 2011-2022 走看看