title: Flutter: How to Bottom Center a Button in a ListView?
body: <p>I need to bottom center a button that is contained within a <code>ListView</code>. By bottom, I mean at the bottom of the screen, or if the screen content is longer than the height of the screen, at the end of the content.</p>
  
  <p>I can do this using a <code>Column</code> with a <code>Spacer</code> widget because the height is defined, however my screen has text input on it. If I use a <code>Column</code> instead of a <code>ListView</code>, the screen overflows when I'm typing.</p>
  
  <p>How can I either </p>
  
  <ol>
  <li>Bottom center a button, or</li>
  <li>Use a <code>Column</code> but prevent the screen from resizing or overflowing when typing; I'd like it to ether be scrollable, or simply have the keyboard cover the screen content while typing.</li>
  </ol>
  
  <p>Basic code example:</p>
  
  <pre class="lang-dart prettyprint-override"><code>return Scaffold(
        body: Center(
          child: Container(
            width: workingWidth,
            child: Center(
              child: ListView(children: &lt;Widget&gt;[
                ScreenHeader("Tell Us a Little About Yourself"),
                TextFormField(
                  maxLines: 16,
                  controller: bioController,
                  autocorrect: true,
                  textCapitalization: TextCapitalization.sentences,
                  maxLength: 500,
                  decoration: InputDecoration(
                    contentPadding: EdgeInsets.all(paddingH5),
                    focusedBorder: UnderlineInputBorder(
                        borderSide: BorderSide(color: colorPrimary)),
                    border: UnderlineInputBorder(
                        borderSide: BorderSide(color: colorMuted)),
                    hintText: "Enter your bio here...",
                    hintStyle: textMuted,
                  ),
                ),
                Spacer(), //This doesn't work because I am using a ListView instead of a Column
                RoundedButton(
                    buttonText: 'Continue',
                    buttonStyle: buttonPrimary,
                    onPressed: () {}
              ),
              ],)
            ),
          ),
        ),
      );
  </code></pre>