platform_adaptive_widgets library
Classes
- AppData
- Configuration for a regular (non-router) platform app.
- CupertinoAlertDialogData
- Cupertino-specific configuration for a platform alert dialog.
- CupertinoAppData
- Cupertino-specific configuration for regular (non-router) apps.
- CupertinoAppRouterData
- Cupertino-specific configuration for router-based apps.
- CupertinoButtonData
- Cupertino-specific configuration for a platform button.
- CupertinoCheckboxData
- Cupertino-specific configuration for a checkbox widget.
- CupertinoDatePickerData
- Cupertino-specific configuration for the platform date picker.
- CupertinoExpansionTileData
- Cupertino-specific configuration for a platform expansion tile.
- CupertinoListTileData
- Cupertino-specific configuration for a platform list tile.
- CupertinoMenuPickerData
- Cupertino-specific configuration for a platform menu picker.
- Cupertino-specific configuration for a platform navigation bar.
- CupertinoProgressIndicatorData
- Cupertino-specific configuration for a platform progress indicator.
-
CupertinoRadioData<
T> - Cupertino-specific configuration for a radio button.
- CupertinoScaffoldData
- Cupertino-specific scaffold data.
- CupertinoScrollbarData
- Cupertino-specific configuration for a platform scrollbar.
- CupertinoSearchBarData
- Cupertino-specific configuration for a search bar widget.
-
CupertinoSegmentButtonData<
T extends Object> - Cupertino-specific configuration for a segmented control.
- CupertinoSwitchData
- Cupertino-specific configuration for a switch widget.
- CupertinoTabScaffoldData
- Cupertino-specific data for a tab-based scaffold.
- CupertinoTextFieldData
- Cupertino-specific configuration for a text field widget.
- Date
- A gregorian calendar date
- MaterialAlertDialogData
- Material-specific configuration for a platform alert dialog.
- MaterialAppBarData
- Material-specific configuration for a platform app bar.
- MaterialAppData
- Material-specific configuration for regular (non-router) apps.
- MaterialAppRouterData
- Material-specific configuration for router-based apps.
- MaterialButtonData
- Material-specific configuration for a platform button.
- MaterialCheckboxData
- Material-specific configuration for a checkbox widget.
- MaterialDatePickerData
- Material-specific configuration for the platform date picker.
- MaterialDialogData
- Material-specific configuration for showing a dialog.
- MaterialExpansionTileData
- Material-specific configuration for a platform expansion tile.
- MaterialListTileData
- Material-specific configuration for platform list tiles.
- MaterialMenuPickerData
- Material-specific configuration for a platform menu picker.
- MaterialProgressIndicatorData
- Material-specific configuration for a platform progress indicator.
-
MaterialRadioData<
T> - Material-specific configuration for a radio button.
- MaterialScaffoldData
- Material-specific scaffold data.
- MaterialScrollbarData
- Material-specific configuration for a platform scrollbar.
- MaterialSearchBarData
- Material-specific configuration for a search bar widget.
-
MaterialSegmentButtonData<
T extends Object> - Material-specific configuration for a segmented button.
- MaterialSliderData
- Material-specific configuration for a slider widget.
- MaterialSwitchData
- Material-specific configuration for a switch widget.
- MaterialTabScaffoldData
- Material-specific data for a tab-based scaffold.
- MaterialTextFieldData
- Material-specific configuration for a text field widget.
- MaterialTimePickerData
- Material-specific configuration for the platform time picker.
-
MenuPickerItem<
T extends Object> - Represents an item in a menu picker.
- PlatformAdaptiveIcons
- A class that provides adaptive icons based on the current platform.
- PlatformAlertDialogActionButton
- A platform-adaptive dialog action button that renders TextButton on Android and CupertinoDialogAction on iOS.
- PlatformApp
- A platform-adaptive app widget that renders MaterialApp on Android and CupertinoApp on iOS.
- PlatformAppBar
- A platform-adaptive app bar that renders Material AppBar on Android and CupertinoNavigationBar on iOS.
- PlatformAppBarData
- Interface for platform app bar data that provides builders for both platforms.
- PlatformAppRouterData
- Platform-shared configuration for router-based apps.
- PlatformButton
- A platform-adaptive button that renders Material Design buttons on Android and Cupertino buttons on iOS.
- PlatformCheckbox
- A platform-adaptive checkbox that renders Material Design checkboxes on Android and Cupertino checkboxes on iOS.
- PlatformCheckboxData
- Platform-shared configuration for a checkbox widget.
- PlatformDialogData
- Platform-shared configuration for showing a dialog.
- PlatformExpansionTile
- A platform-adaptive expansion tile that renders Material ExpansionTile on Android and CupertinoExpansionTile on iOS.
- PlatformListTile
- A platform-adaptive list tile that renders Material ListTile on Android and CupertinoListTile on iOS.
-
PlatformMenuPicker<
T extends Object> - A platform-adaptive menu picker that renders Material DropdownMenu on Android and CupertinoPicker with CupertinoListTile on iOS.
- PlatformProgressIndicator
- A platform-adaptive progress indicator that renders Material CircularProgressIndicator on Android and CupertinoActivityIndicator on iOS.
-
PlatformRadioData<
T> - Platform-shared configuration for an individual radio button.
-
PlatformRadioGroup<
T extends Object> - A platform-adaptive radio group that renders Material RadioGroup on Android
-
PlatformRadioGroupData<
T extends Object> - Configuration for a platform radio group.
- PlatformScaffold
- A platform-adaptive scaffold that renders Material Scaffold on Android and CupertinoPageScaffold on iOS.
- PlatformScrollbar
- A platform-adaptive scrollbar that renders Material Scrollbar on Android and CupertinoScrollbar on iOS.
- PlatformSearchBar
- A platform-adaptive search bar that renders Material SearchBar on Android and CupertinoSearchTextField on iOS.
- PlatformSearchBarData
- Platform-shared configuration for a search bar widget.
-
PlatformSegmentButton<
T extends Object> - A platform-adaptive segmented button that renders Material SegmentedButton on Android and CupertinoSlidingSegmentedControl on iOS.
- PlatformSlider
- A platform-adaptive slider that renders Material Slider on Android and CupertinoSlider on iOS.
- PlatformSliderData
- Platform-shared configuration for a slider widget.
- PlatformSwitch
- A platform-adaptive switch that renders Material Switch on Android and CupertinoSwitch on iOS.
- PlatformSwitchData
- Platform-shared configuration for a switch widget.
- PlatformTabScaffold
- A platform-adaptive tab scaffold
- PlatformTextField
- A platform-adaptive text field that renders Material TextField on Android and CupertinoTextField on iOS.
- PlatformTextFieldData
- Platform-shared configuration for a text field widget.
- PlatformTheme
- Provides access to platform-specific theme colors.
- PlatformWidget
- A platform-adaptive widget that provides different implementations for Material and Cupertino.
- PlatformWidgetBuilder
- A platform-adaptive widget that wraps a child widget with platform-specific behavior.
- TabDestination
- Data for a single destination in a tab-based navigation structure.
Enums
- CupertinoButtonVariant
- Cupertino button variants available for PlatformButton.
- MaterialButtonVariant
- Material Design button variants available for PlatformButton.
Extensions
- DateTimeExtensions on DateTime
- Extensions on DateTime for converting to a Date.
- PlatformAdaptiveContextExtensions on BuildContext
- Extensions on BuildContext for resolving platform-specific values.
- TimeOfDayExtensions on TimeOfDay
- Extensions on TimeOfDay for converting to a DateTime.
Constants
- kAutoImplyLeading → const bool
-
Default value for
automaticallyImplyLeadingin app bar data classes. - kDebugShowMaterialGrid → const bool
- Default value for `debugShowMaterialGrid in Material app data.
- kDefaultAutofocus → const bool
- Default value for whether a widget should autofocus.
- kDefaultCheckerboardOffscreenLayers → const bool
- Default value for `checkerboardOffscreenLayers in app data classes.
- kDefaultCheckerboardRasterCacheImages → const bool
- Default value for `checkerboardRasterCacheImages in app data classes.
- kDefaultDebugShowCheckedModeBanner → const bool
- Default value for `debugShowCheckedModeBanner in app data classes.
- kDefaultResizeToAvoidBottomInset → const bool
- Default value for whether scaffold should resize to avoid bottom inset.
- kDefaultShowPerformanceOverlay → const bool
- Default value for `showPerformanceOverlay in app data classes.
- kDefaultShowSemanticsDebugger → const bool
- Default value for `showSemanticsDebugger in app data classes.
-
kDefaultSupportedLocales
→ const List<
Locale> - Default value for `supportedLocales in app data classes.
- kMaterialDefaultThemeAnimationCurve → const Curve
- Default Material theme animation curve.
- kMaterialDefaultThemeAnimationDuration → const Duration
- Default Material theme animation duration.
Properties
- isAndroid → bool
-
Whether the app is running on Android.
no setter
- isIOS → bool
-
Whether the app is running on iOS.
no setter
- targetPlatform → TargetPlatform
-
The reusable target platform for the app.
final
Functions
-
showPlatformAlertDialog<
T> ({required BuildContext context, PlatformDialogData? platformDialogData, MaterialDialogData? materialDialogData, PlatformDialogData? cupertinoDialogData, MaterialAlertDialogData? materialAlertDialogData, CupertinoAlertDialogData? cupertinoAlertDialogData, Widget? title, Widget? content, List< Widget> ? actions, Key? key}) → Future<T?> - Shows a platform-adaptive alert dialog that renders Material AlertDialog on Android and CupertinoAlertDialog on iOS.
-
showPlatformDatePicker(
{required BuildContext context, required Date firstDate, required Date lastDate, Date? initialDate, Offset? anchorPoint, Color? barrierColor, bool? barrierDismissible, RouteSettings? routeSettings, SelectableDayPredicate? selectableDayPredicate, TransitionBuilder? builder, MaterialDatePickerData? materialDatePickerData, CupertinoDatePickerData? cupertinoDatePickerData}) → Future< Date?> - Shows a platform-adaptive date picker that renders Material showDatePicker on Android and CupertinoDatePicker on iOS.
-
showPlatformDialog<
T> ({required BuildContext context, WidgetBuilder? builder, WidgetBuilder? materialBuilder, WidgetBuilder? cupertinoBuilder, PlatformDialogData? platformDialogData, MaterialDialogData? materialDialogData, PlatformDialogData? cupertinoDialogData, Key? materialKey, Color? materialBackgroundColor, Duration materialInsetAnimationDuration = _kMaterialInsetAnimationDuration, Curve materialInsetAnimationCurve = _kMaterialInsetAnimationCurve, SemanticsRole materialSemanticsRole = _kMaterialSemanticsRole, AlignmentGeometry? materialAlignment, ShapeBorder? materialShape, Clip? materialClipBehavior, BoxConstraints? materialConstraints, double? materialElevation, EdgeInsets? materialInsetPadding, Color? materialShadowColor, Color? materialSurfaceTintColor}) → Future< T?> - Shows a platform-adaptive dialog that renders Material dialogs on Android and Cupertino dialogs on iOS.
-
showPlatformModalBottomSheet<
T> ({required BuildContext context, required WidgetBuilder builder}) → Future< T?> - Shows a platform-adaptive modal bottom sheet that renders Material showModalBottomSheet on Android and showCupertinoModalPopup on iOS.
-
showPlatformSimpleAlert(
{required BuildContext context, required String message, required String cupertinoOkLabel, Color? materialBackgroundColor, double? materialElevation, EdgeInsetsGeometry? materialMargin, EdgeInsetsGeometry? materialPadding, double? materialWidth, ShapeBorder? materialShape, HitTestBehavior? materialHitTestBehavior, SnackBarBehavior? materialSnackBarBehavior, SnackBarAction? materialAction, double? materialActionOverflowThreshold, bool? materialShowCloseIcon, Color? materialCloseIconColor, Duration materialDuration = _snackBarDisplayDuration, bool? materialPersist, Animation< double> ? materialAnimation, VoidCallback? materialOnVisible, DismissDirection? materialDismissDirection, Clip materialClipBehavior = Clip.hardEdge, String? cupertinoTitle, PlatformDialogData? cupertinoDialogData}) → Future<void> - A pure convenience method for showing a simple alert. On material, it will show a SnackBar. On cupertino, it will show a CupertinoAlertDialog with a single 'OK' action.
-
showPlatformTimePicker(
{required BuildContext context, required TimeOfDay initialTime, Offset? anchorPoint, Color? barrierColor, bool? barrierDismissible, RouteSettings? routeSettings, TransitionBuilder? builder, MaterialTimePickerData? materialTimePickerData, CupertinoDatePickerData? cupertinoTimePickerData}) → Future< TimeOfDay?> - Shows a platform-adaptive time picker that renders Material showTimePicker on Android and CupertinoDatePicker (in time mode) on iOS.
Typedefs
-
ValueAndButton<
T extends Object> = ({Widget button, T value}) - A record pairing a value with its corresponding radio button widget.