title: Using FutureBuilder inside Build method
body: <p>I am using <code>FutureBuilder</code> inside my <code>Build</code> method and the <code>FutureBuilder</code> keeps firing up again and again. I only want to call <code>FutureBuilder</code> once until my <code>future</code> is loaded and then call another function as soon as it is done. This is my <code>Build</code> function - </p>
  
  <pre><code>@override
  Widget build(BuildContext context) {
      return FutureBuilder(
        future: parsings(),
        builder:
            (BuildContext context, AsyncSnapshot&lt;dynamic&gt; snapshot) {
          switch (snapshot.connectionState) {
            case ConnectionState.waiting:
              return LoadingState(context);
            default:
              if (snapshot.hasError)
                return new Text(
                    'Error in snapshot: \n${snapshot.error}');
              else {
                return func1();
              }
          }
        },
      );
    }
  </code></pre>
  
  <p>As i said, my <code>Build</code> function keeps on building again and again. </p>
  
  <p>Before this, i was using my <code>future</code> inside <code>initState</code> but because of that, my actual page that i wanted to return gave null values all over until the API was called. I dont want to see null values at all so i wanted to use <code>FutureBuilder</code> and display <code>LoadingState()</code> until the API was called and then show my page which has all the called values and doesnt show <code>null</code> values. Any help would be appreciated.</p>
  
  <p><strong>EDIT</strong>: The detailed issue i am facing is as the <code>build</code> function is being called again and again, i am seeing my <code>LoadingState()</code> again and again, that is, <code>LoadingState()</code> is appearing and then <code>func1()</code> is appearing then again, <code>LoadingState()</code>, then <code>func1()</code> and so on. this process does not stop at all. Also, i do not want to use <code>parsings()</code> in initState because on doing so, before the API is called, the <code>func1()</code> shows null values in my data and as soon as it is called, the build function changes its values to the values called from API. I don't want to see it like that which is why i wanted to use <code>FutureBuilder</code>.</p>