Flutter Widgets: A Definitive Guide.
There are 410 widget subclasses in flutter framework. We will go through them one after another in this series.
Basic Widgets
- Text
- Image
- Icon
- ElevatedButton
- Row
- Column
- Wrap
- Container
- Scaffold
- AppBar
- Placeholder
- Card
- Checkbox
- Radio
- FloatingActionButton
- Switch
- SafeArea
- WillPopScope
Text Widgets
- Text
- RichText
- DefaultTextStyle
- SelectableText
- TextField
- EditableText
Image Widgets
- Image
- CircleAvatar
- RawImage
- FadeInImage
- ImageIcon
Layout Widgets
- Card
- ExpansionPanelRadio
- ExpansionPanelList
- ReorderableListView
- AnimatedList
- ListBody
- Stack
- IndexedStack
- Flex
- Row
- Column
- Flexible
- Expanded
- Wrap
- Flow
- LayoutBuilder
- Container
- DecoratedBox
- GridPaper
- ViewPort
- ShrinkWrappingViewport
- NestedScrollViewViewport
- PageView
- ReorderableList
- AnimatedBuilder
Icon Widgets
- Icon
- AnimatedIcon
- BackButtonIcon
- ExpandIcon
- ImageIcon
Buttons
- BackButtonIcon
- BackButton
- CloseButton
- ButtonBar
- TextButton
- ElevatedButton
- OutlinedButton
- RawMaterialButton
- DropdownButton
- FloatingActionButton
- IconButton
- ToggleButtons
Async
- StreamBuilder
- FutureBuilder
Sliders
- RangeSlider
- Slider
Animations
- Hero
- SliverAnimatedList
- AnimatedIcon
- AnimatedCrossFade
- AnimatedList
- AnimatedSize
- AnimatedSwitcher
- AnimatedContainer
- AnimatedPadding
- AnimatedAlign
- AnimatedPositioned
- AnimatedPositionedDirectional
- AnimatedOpacity
- SliverAnimatedOpacity
- AnimatedDefaultTextStyle
- AnimatedPhysicalModel
- AnimatedModalBarrier
- AnimatedBuilder
- TweenAnimationBuilder
Transition
- SlideTransition
- ScaleTransition
- RotationTransition
- SizeTransition
- FadeTransition
- SliverFadeTransition
- PositionedTransition
- RelativePositinedTransition
- DecoratedBoxTransition
- AlignTransition
- DefaultTextStyleTransition
About Widgets
- AboutListTile
- AboutDialog
- LicensePage
Dialogs
- AboutDialog
- BottomSheet
- CalendarDatePicker
- YearPicker
- DatePickerDialog
- DateRangePickerDialog
- Dialog
- AlertDialog
- SimpleDialogOption
- SimpleDialog
- DropdownButton
Form Widgets
- Form
- FormField
- Autocomplete
- RawAutocomplete
- DropdownButtonFormField
- InputDatePickerFormField
- TextFormField
- AutofillGroup
Scroll
- Scrollbar
- RawScrollbar
- CupertinoScrollbar
- ListWheelScrollView
- NestedScrollView
- CustomScrollView
- ListView
- GridView
- ScrollView
- BoxScrollView
- Scrollable
- SingleChildScrollView
Sliver Widgets
- SliverAppBar
- SliverAnimatedList
- SliverToBoxAdapter
- SliverPadding
- SliverOverlapAbsorber
- SliverOverlapInjector
- SliverReorderableList
- SliverSafeArea
- SliverFillViewport
- SliverFillRemaining
- SliverLayoutBuilder
- SliverPersistentHeader
- SliverPrototypeExtentList
- SliverWithKeepAliveWidget
- SliverMultiBoxAdaptorWidget
- SliverList
- SliverFixedExtentList
- SliverGrid
- SliverOpacity
- SliverIgnorePointer
- SliverOffstage
- SliverVisibility
AppBar Widgets
- AppBar
- SliverAppBar
- BottomAppBar
- PreferredSize
Table Widgets
- DataTable
- TableRowInkWell
- PaginatedDataTable
- Table
- TableCell
List Item Widgets
- CheckboxListTile
- DropdownMenuItem
- ExpansionTile
- GridTile
- GridTitleBar
- ListTile
- RadioListTile
- SwitchListTile
Chip Widgets
- Chip
- InputChip
- ChoiceChip
- FilterChip
- ActionChip
- RawChip
Navigation Widgets
- BottomNavigationBar
- CupertinoNavigationBar
- CupertinoSliverNavigationBar
- NavigationRail
- NavigationToolbar
Drawer
- DrawerHeader
- Drawer
- DrawerController
Popup Menu
- PopupMenuDivider
- PopupMenuItem
- CheckedPopupMenuItem
- PopupMenuButton
Progress Indicators
- LinearProgressIndicator
- CircularProgressIndicator
- RefreshProgressIndicator
Tab
- DefaultTabController
- Tab
- TabBar
- TabBarView
- TabPageSelectorIndicator
- TabPageSelector
Material Widgets
- AppBar
- SliverAppBar
- MaterialApp
- MaterialBannerTheme
- MaterialBanner
- BottomAppBar
- BottomNavigationBarTheme
- BottomNavigationBar
- FlexibleSpaceBar
- FlexibleSpaceBarSettings
- Ink
- InkResponse
- InkWell
- Material
- MergeableMaterial
- ScaffoldMessenger
- Scaffold
- SnackBarAction
- SnackBar
- Stepper
- UserAccountsDrawerHeader
Cupertino Widgets
- CupertinoActionSheet
- CupertinoActionSheetAction
- CupertinoActivityIndicator
- CupertinoApp
- CupertinoTabBar
- CupertinoButton
- CupertinoContextMenuAction
- CupertinoContextMenu
- CupertinoDatePicker
- CupertinoTimerPicker
- CupertinoAlertDialog
- CupertinoPopupSurface
- CupertinoDialogAction
- CupertinoFormRow
- CupertinoFormSection
- CupertinoNavigationBar
- CupertinoSliverNavigationBar
- CupertinoNavigationBarBackButton
- CupertinoPageScaffold
- CupertinoPicker
- CupertinoPickerDefaultSelectionOverlay
- CupertinoSliverRefreshControl
- CupertinoPageTransition
- CupertinoFullscreenDialogTransition
- CupertinoSearchTextField
- CupertinoSegmentedControl
- CupertinoSlider
- CupertinoSlidingSegmentedControl
- CupertinoSwitch
- CupertinoTabScaffold
- CupertinoTabView
- CupertinoTextField
- CupertinoTextFormFieldRow
- CupertinoTextSelectionToolbarButton
- CupertinoTextSelectionToolbar
- CupertinoTextSelectionControls
- CupertinoTheme
Theme Widgets
- BottomNavigationBarTheme
- MaterialBannerTheme
- CupertinoTheme
- AnimatedTheme
- ButtonBarTheme
- TextButtonTheme
- ElevatedButtonTheme
- OutlinedButtonTheme
- CheckboxTheme
- ChipTheme
- DataTableTheme
- DividerTheme
- ListTileTheme
- NavigationRailTheme
- PopupMenuTheme
- RadioTheme
- ScrollbarTheme
- SliderTheme
- SwitchTheme
- TextSelectionTheme
- TimePickerTheme
- ToggleButtonsTheme
- TooltipTheme
- IconTheme
- DefaultTextHeightBehavior
Actions
- ActionListener
- Actions
- FocusableActionDetector
Assets
- DefaultAssetBundle
Basic
- Directionality
- Opacity
- ShaderMask
- BackdropFilter
- CustomPaint
- ClipRect
- ClipRRect
- ClipOval
- ClipPath
- PhysicalModel
- PhysicalShape
- Transform
- CompositedTransformTarget
- CompositedTransformFollower
- FittedBox
- FractionalTransition
- RotatedBox
- Padding
- Align
- Center
- CustomSingleChildLayout
- LayoutId
- CustomMultiChildLayout
- SizedBox
- ConstrainedBox
- ConstraintsTransformBox
- UnconstrainedBox
- FractionallySizedBox
- LimitedBox
- OverflowBox
- SizedOverflowBox
- Offstage
- AspectRatio
- IntrinsicWidth
- IntrinsicHeight
- Baseline
- Positioned
- PositionedDirectional
- WidgetToRenderBoxAdapter
- Listener
- MouseRegion
- RepaintBoundary
- IgnorePointer
- AbsorbPointer
- MetaData
- KeyedSubtree
- Builder
- StatefulBuilder
- ColoredBox
- ColorFiltered
- Dismissible
- Draggable
- LongPressDraggable
- DragTarget
- DraggableScrollableSheet
- DraggableScrollableActuator
- DualTransitionBuilder
- Focus
- FocusScope
- ExcludeFocus
- GestureDetector
- RawGestureDetector
- ImageFiltered
- InteractiveViewer
- Localizations
- MediaQuery
- ModalBarrier
- Navigator
- NotificationListener
- OrientationBuilder
- OverflowBar
- Overlay
- GlowingOverscrollIndicator
- Router
- KeepAlive
- Spacer
- TextSelectionGestureDetector
- Texture
- Title
- Visibility
Semantics
- Semantics
- MergeSemantics
- BlockSemantics
- ExcludeSemantics
- IndexedSemantics
- SemanticsDebugger
Native
- AndroidView
- UiKitView
- HtmlElementView
- PlatformViewLink
- PlatformViewSurface
- AndroidViewSurface
Miscellaneous Widgets
- Divider
- VerticalDivider
- DropdownButtonHideUnderline
- FlutterLogo
- RefreshIndicator
- TextSelectionToolbarTextButton
- TextSelectionToolbar
- Theme
- Tooltip
- AnnotatedRegion
- WidgetsApp
- AutomaticKeepAlive
- Banner
- CheckedModeBanner
- DefaultTextEditingShortcuts
- DesktopTextSelectionToolbarLayoutDelegate
- ErrorWidget
- RenderObjectToWidgetAdapter
- FocusTraversalOrder
- FocusTraversalGroup
- HeroMode
- HeroControllerScope
- PageStorage
- PerformanceOverlay
- PrimaryScrollController
- RawKeyboardListener
- ReorderableDragStartListener
- ReorderableDelayedDragStartListener
- RestorationScope
- UnmanagedRestorationScope
- RootRestorationScope
- BackButtonListener
- ScrollConfiguration
- Shortcuts
- SizeChangedLayoutNotifier
- TextSelectionToolbarLayoutDelegate
- TickerMode
- ValueListenableBuilder
- WidgetInspector
Abstract Widgets
- ProxyWidget
- StatelessWidget
- StatefulWidget
- ParentDataWidget
- InheritedWidget
- RenderObjectWidget
- LeafRenderObjectWidget
- SingleChildRenderObjectWidget
- MultiChildRenderObjectWidget
- ImplicitlyAnimatedWidget
- InheritedModel
- InheritedNotifier
- InheritedTheme
- ConstrainedLayoutBuilder
- StatusTransitionWidget
- AnimatedWidget
- UniqueWidget