On the Material Design side, Flutter implements the following button components:
- RaisedButton: A Material Design raised button. A raised button consists of a rectangular piece of material that hovers over the interface.
- FloatingActionButton:
- FlatButton: A flat button is a section printed on a Material widget that reacts to touches by splashing/rippling with color.
- IconButton: An icon button is a picture printed on a Material widget that reacts to touches by splashing/rippling.
Ink, from the Material Design guidelines website, can be explained as follows:
"Component that provides a radial action in the form of a visual ripple expanding outward from the user's touch."
- DropDownButton: Shows the currently selected item and an arrow that opens a menu for selecting another item.
- PopUpMenuButton: Displays a menu when pressed.
For iOS Cupertino style, Flutter provides the CupertinoButton class.
Due to Material Design's guidelines, elevation, ink effects, and light effects, Material Design widgets are a bit more expensive than Cupertino widgets. Not to the point of worrying, but it's interesting to know.