title: SingleChildScrollView not working with multiple components in a Column - flutter
body: <p>I am having a problem in flutter.  My screen is not scrolling.  I have a few components using the Column feature to them it out one below each other but the simple scrolling feature is not working.</p>
  
  <p>here is my code</p>
  
  <pre><code> Widget buildContent() {
      int count = 0;
  
      if (incomeList == null) {
        incomeList = List&lt;Income&gt;();
      }
        return Column(
          children: &lt;Widget&gt;[
            Row(
              mainAxisAlignment: MainAxisAlignment.spaceAround,
              mainAxisSize: MainAxisSize.max,
              children: [
                Expanded(
                  flex: 1,
                  child: Column(
                    children: &lt;Widget&gt;[
                      Text(
                        "${widget.outstanding}",
                        textAlign: TextAlign.center,
                      ),
                      Padding(
                        padding: EdgeInsets.all(3.0),
                        child: Text(zeroAmount,
                            textAlign: TextAlign.center,
                            style: TextStyle(
                              color: Colors.green,
                            )),
                      ),
                    ],
                  ),
                ),
                Container(width: 0.4, height: 40, color: Colors.black54),
                Expanded(
                  flex: 1,
                  child: Column(
                    children: [
                      Text(
                        "${widget.received_or_paid}",
                        textAlign: TextAlign.center,
                      ),
                      Padding(
                        padding: EdgeInsets.all(3.0),
                        child: Text(zeroAmount, textAlign: TextAlign.center,
                            style: TextStyle(color: Colors.green)),
                      ),
                    ],
                  ),
                ),
                //Divider(color: Colors.black54),
              ],
            ),
            // SizedBox(height: 12), //padding
            Padding(
              padding: EdgeInsets.only(top: 12.0, left: 15.0, right: 15.0),
              child: Divider(
                height: 1,
                color: Colors.black54,
              ),
            ),
            IncomeTransaction(),
          ],
        );
  }
  
   @override
      Widget build(BuildContext context) {
        return Scaffold(
          appBar: TextSwitchAppBar(
  
            bottom: PreferredSize(
              child: _buildLayoutAttributesPage(),
            ),
          ),
          floatingActionButton: FloatingActionButton(
            backgroundColor: colorPrimary,
            onPressed: () {
              Navigator.push(context,
                  MaterialPageRoute(builder: (context) =&gt; getTransactionType()));
            },
            child: Icon(
              Icons.add,
            ),
          ),
          body: Container(
              //height: 1000,
              padding: EdgeInsets.symmetric(vertical: 16.0),
              child: buildContent()
          ),
        );
      }
  
  
  </code></pre>
  
  <p>below is the IncomeTransaction code</p>
  
  <pre><code>
  import 'package:flutter/material.dart';
  import 'package:finsec/utils/colors.dart';
  import 'package:finsec/utils/strings.dart';
  import 'package:finsec/screens/transaction/text_switch_app_bar.dart';
  import 'package:finsec/screens/transaction/row_column_layout_attributes.dart';
  import 'package:finsec/widget/transaction_list_view.dart';
  import 'package:finsec/screens/income/second_fragment.dart';
  import 'package:finsec/screens/income/add_edit_income.dart';
  import 'package:finsec/data/blocs/bloc_provider.dart';
  import 'package:finsec/data/blocs/transaction_bloc.dart';
  import 'package:finsec/screens/transaction/transaction_list.dart';
  import 'package:finsec/data/db_provider.dart';
  import 'package:sqflite/sqflite.dart';
  import 'package:finsec/model/income/income.dart';
  import 'package:finsec/widget/total_amount.dart';
  
  
  class IncomeTransaction extends StatefulWidget {
  
    @override
    State&lt;StatefulWidget&gt; createState() {
  
      return IncomeTransactionState();
    }
  }
  
  class IncomeTransactionState extends State&lt;IncomeTransaction&gt; {
  
    DBProvider db = new DBProvider();
    List&lt;Income&gt; incomeList;
    int count = 0;
  
    @override
    Widget build(BuildContext context) {
      if (incomeList == null) {
        incomeList = List&lt;Income&gt;();
        updateListView();
        for(int i=0; i&lt;incomeList.length; i++) {
          print('CATEGORY');
          print(this.incomeList[i].category);
        }
      }
      TextStyle titleStyle = Theme.of(context).textTheme.subhead;
      return 
              ListView.builder(
                shrinkWrap: true,
                itemCount: count,
                itemBuilder: (BuildContext context, int position) {
                  return Column(
                      children: [
                        ListTile(
                          leading: CircleAvatar(
                            backgroundColor: Colors.yellow,
                            child: Icon(Icons.play_arrow),
                          ),
  
                          title: Text(this.incomeList[position].category,
                            style: titleStyle,),
  
                          // subtitle: Text(this.incomeList[position].payoutDate),
  
                          trailing: GestureDetector(
                            child: Icon(Icons.delete, color: Colors.grey,),
                            onTap: () {
                              _delete(context, incomeList[position]);
                            },
                          ),
  
  
                          onTap: () {
                            debugPrint("ListTile Tapped");
                            navigateToDetail(
                                this.incomeList[position], 'Edit Note');
                          },
                        )
                      ]
                  );
                }
              );
  
  
    }
  
    // Returns the priority color
    Color getPriorityColor(int priority) {
      switch (priority) {
        case 1:
          return Colors.red;
          break;
        case 2:
          return Colors.yellow;
          break;
  
        default:
          return Colors.yellow;
      }
    }
  
    // Returns the priority icon
    Icon getPriorityIcon(int priority) {
      switch (priority) {
        case 1:
          return Icon(Icons.play_arrow);
          break;
        case 2:
          return Icon(Icons.keyboard_arrow_right);
          break;
  
        default:
          return Icon(Icons.keyboard_arrow_right);
      }
    }
  
    void _delete(BuildContext context, Income note) async {
  
      int result = await db.deleteTransaction(note.id);
      if (result != 0) {
        _showSnackBar(context, 'Note Deleted Successfully');
        updateListView();
      }
    }
  
    void _showSnackBar(BuildContext context, String message) {
  
      final snackBar = SnackBar(content: Text(message));
      Scaffold.of(context).showSnackBar(snackBar);
    }
  
    void navigateToDetail(Income note, String title) async {
      bool result = await Navigator.push(context, MaterialPageRoute(builder: (context) {
       // return NoteDetail(Income, title);
      }));
  
      if (result == true) {
        updateListView();
      }
    }
  
    void updateListView() {
  
      final Future&lt;Database&gt; dbFuture = db.initializeDatabase();
      dbFuture.then((database) {
  
        Future&lt;List&lt;Income&gt;&gt; incomeListFuture = db.getIncomeList('income');
        incomeListFuture.then((incomeList) {
          setState(() {
            this.incomeList = incomeList;
            this.count = incomeList.length;
          });
        });
      });
    }
  }
  
  
  </code></pre>
  
  <p>the Listview is not scrolling.  i try to use SingleChildScrollView but still the list view is not scrolling.  I read online that SingleChildScrollView doesnt work with Column attribute but not sure if this is true.  also i read that i should include the widget on top of the listview(total outstanding, total received) as part of list view but dont know how to do that.  that header should not be clickable.  </p>
  
  <p>can someone help me modify this code so that my screen can scroll up an down. 
  also, not sure why i am getting bottom overflow error if i am using shrinkWrap: true, in the listview builder.</p>
  
  <p>see image attach for the output im getting.  listview is not scrolling
  <a href="https://i.stack.imgur.com/uc7Ge.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/uc7Ge.png" alt="enter image description here"></a></p>