title: How to transform Future<List<Map> to List<Map> in Dart language?
body: <p>I have a question in coding with dart language. How to transform a Future to the normal List? In my program, I need the result from web to continue next step and I don't know how to do it.
  In my case, I need to return the value of variable "data" as a List.</p>
  
  <pre><code>class _MyAppState extends State&lt;MyApp&gt; {
      static List getList() {
      var url = "http://watcherman.cn/web/json.php";
      var data;
      HttpClient client = new HttpClient();
      client.getUrl(Uri.parse(url))
        .then((HttpClientRequest request) =&gt; request.close())
      .then((HttpClientResponse response) {
        response.transform(UTF8.decoder).listen((contents) {
          String jsonContent = contents.toString();
          data = JSON.decode(jsonContent);
        });
      });
      return data;
    }
  }
  </code></pre>
  
  <p>But it seems like not execute the network part.
  The flutter code part seems can't accept a Future.</p>
  
  <pre><code>class _MyAppState extends State&lt;MyApp&gt; {
    static List content = getList();
    @override
    Widget build(BuildContext context) {
      return new Container(
          child: new ListView.builder(
              scrollDirection: Axis.vertical,
              padding: new EdgeInsets.all(6.0),
              itemCount: content.length,
              itemBuilder: (BuildContext context, int index) {
                return new Container(
                    alignment: FractionalOffset.center,
                    margin: new EdgeInsets.only(bottom: 6.0),
                    padding: new EdgeInsets.all(6.0),
                    color: Colors.blueGrey,
                    child: new Text(content[index]["title"])
                );
              }
          )
      );
    }
  }
  </code></pre>