One final important thing to keep in mind about scrolling widgets is that because they need to know their parent's constraints to activate scrolling, putting scroll widgets inside widgets with unbounded constraints can cause Flutter to throw errors.
In our example, we placed ListView inside a Column, which is a flex widget that lays out its children based on their intrinsic size. This works fine for widgets such as Containers, Buttons, and Text, but it fails for ListViews. To make scrolling work inside Column, we had to wrap it in an Expanded widget, which will then tell ListView how much space it has to work with. Try removing Expanded; the whole widget will disappear and you should see an error in the Debug console:
These types of errors can be pretty unsettling to see and don't always immediately tell you how to fix your code. There is also a long explosion of log entries that have nothing to do with...