Flutter-provided widgets

Common widgets

Flutter comes with a suite of powerful basic widgets, of which the following are commonly used:

Text

The Text widget lets you create a run of styled text within your application.

Row, Column

These flex widgets let you create flexible layouts in both the horizontal (Row) and vertical (Column) directions. The design of these objects is based on the web’s flexbox layout model.

Stack

Instead of being linearly oriented (either horizontally or vertically), a Stack widget lets you place widgets on top of each other in paint order. You can then use the Positioned widget on children of a Stack to position them relative to the top, right, bottom, or left edge of the stack. Stacks are based on the web’s absolute positioning layout model.

Container

The Container widget lets you create a rectangular visual element. A container can be decorated with a BoxDecoration, such as a background, a border, or a shadow. A Container can also have margins, padding, and constraints applied to its size. In addition, a Container can be transformed in three dimensional space using a matrix.

ListView

ListView is the most commonly used scrolling widget. It displays its children one after another in the scroll direction.

Material widgets

In today's workshop we will be using Material based widgets in addition to common ones. In particular:

ListTile

A list tile contains one to three lines of text optionally flanked by icons or other widgets, such as check boxes.

IconButton

An icon button is a picture printed on a Material widget that reacts to touches by filling with color (ink). Icon buttons are commonly used in the AppBar.actions field, but they can be used in many other places as well.

TextField

A text field lets the user enter text, either with hardware keyboard or with an onscreen keyboard.

Scaffold

Implements the basic material design visual layout structure.

This class provides APIs for showing drawers, snack bars, and bottom sheets.

Widgets catalog

To discover more widgets from Flutter, check the Widgets catalog.