fl_extended library

Classes

AlignedGridView
A scrollable, 2D array of widgets placed according to the aligned layout.
BezierBackground
Bezier curve background.
BezierCircleHeader
Bezier circle footer. https://dribbble.com/shots/1797373-Pull-Down-To-Refresh
BezierFooter
Bezier footer.
BezierHeader
Bezier header.
BottomSheetOptions
BText
BTextStyle
BuilderFooter
Build footer widget use IndicatorBuilder.
BuilderHeader
Build header widget use IndicatorBuilder.
ChangedBuilder<T>
ClassicFooter
Classic footer.
ClassicHeader
Classic header.
CupertinoFooter
Cupertino footer. https://github.com/THEONE10211024/WaterDropListView
CupertinoHeader
Cupertino header. https://github.com/THEONE10211024/WaterDropListView
CupertinoListWheelScrollView
CupertinoModalPopupOptions
CustomFutureBuilder<T>
自定义版 FutureBuilder
CustomStreamBuilder<T>
自定义版 StreamBuilder
DecoratorBox
Widget 装饰器
DecoratorBoxState
Widget 装饰器 动态焦点样式
DecoratorBoxStyle
DecoratorEntry
DeliveryFooter
Delivery footer. https://dribbble.com/shots/2753803-Refresh-your-delivery
DeliveryHeader
Delivery footer. https://dribbble.com/shots/2753803-Refresh-your-delivery
DialogOptions
关闭 closePopup
DoubleChooseWindows
EasyRefresh
A flutter widget that provides pull-down refresh and pull-up load.
EasyRefreshController
Controls a EasyRefresh widget. Control refresh, loading and indicator states.
EasyRefreshData
EasyRefresh needs to share data
EasyRefreshed
ERScrollBehavior
Define ScrollBehavior in the scope of EasyRefresh. Add support for web and PC.
ExtendedFutureBuilder<T>
扩展 FutureBuilder
ExtendedListenableBuilder<T extends Listenable>
Example:
ExtendedOverlay
ExtendedOverlayEntry
ExtendedPopScope
ExtendedSliverPersistentHeader
初始化 delegate 参数
ExtendedSliverPersistentHeaderDelegate
SliverPersistentHeader 固定
ExtendedState<T extends StatefulWidget>
ExtendedStatefulBuilder
StatefulBuilder 扩展
ExtendedStatefulWidget
ExtendedStatefulWidgetState<T extends ExtendedStatefulWidget>
ExtendedStreamBuilder<T>
扩展 StreamBuilder
ExtendedTextField
FlAnimation
FlExtended
FlExtendedIcons
icons
Footer indicator.
FooterLocator
Find Footer's Location Put the last item in the list it will smartly show Footer
FooterNotifier
Footer notifier Footer status and Notifications
GeneralModalOptions
Header indicator.
HeaderLocator
Find Header's Location Put the first item in the list it will smartly show Header
HeaderNotifier
Header notifier Header status and Notifications
IconBox
Indicator
Refresh and loading indicator. Indicator configuration and widget builder.
IndicatorNotifier
Indicator data and trigger notification.
IndicatorState
Indicator properties and state.
IndicatorStateListenable
Indicator state listenable.
InputBorderStyle
按回车时调用 先调用此方法 然后调用onSubmitted方法 final VoidCallback? onEditingComplete; final ValueCallback
ListenerFooter
Listener footer. Listen to the indicator state and respond anywhere.
ListenerHeader
Listener header. Listen to the indicator state and respond anywhere.
ListWheel
ListWheelState
解决父组件重新 build 时 改变子元素长度后显示异常问题 添加支持初始位置
Loading
LoadingContent
LoadingOptions
LoadingProgressIndicator
MasonryGridView
A scrollable, 2D array of widgets placed according to the masonry layout.
MaterialFooter
Material footer.
MaterialHeader
Material header.
模态框背景
ModalBoxOptions
ModalOptions
NoScrollBehavior
NotLoadFooter
Parameters when EasyRefresh.onLoad is null. Overscroll behavior of ScrollView.
NotRefreshHeader
Parameters when EasyRefresh.onRefresh is null. Overscroll behavior of ScrollView.
NumberLimitFormatter
数字输入的精确控制
OverrideFooter
Override the Footer parameter. First of all you have to make it clear that this is feasible, otherwise please don't use it.
OverrideHeader
Override the Header parameter. First of all you have to make it clear that this is feasible, otherwise please don't use it.
PageRouteOptions
page route
PhoenixFooter
Phoenix footer. https://github.com/Yalantis/Phoenix
PhoenixHeader
Phoenix header. https://github.com/Yalantis/Phoenix
QuiltedGridRepeatPattern
Defines how a pattern is repeating.
QuiltedGridTile
A tile for SliverQuiltedGridDelegate.
RefreshConfig
RefreshControllers
RefreshScrollView
可刷新的滚动组件 嵌套 sliver 家族组件
RenderSliverMasonryGrid
A sliver that places multiple box children in a two dimensional arrangement.
RenderSliverPinnedToBoxAdapter
RText
RichText 魔改版 建议使用 BText.rich,动态配置字体颜色
ScrollList
SecondaryBuilderFooter
Secondary builder footer.
SecondaryBuilderHeader
Secondary builder header.
SecondaryFooter
Secondary footer. Combine existing Footer with secondary.
SecondaryHeader
Secondary header. Combine existing Header with secondary.
SliverAlignedGrid
A sliver that places multiple box children in a two dimensional arrangement.
SliverListGrid
组合SliverListSliverGridSliverFixedExtentListSliverPrototypeExtentListSliverMasonryGridSliverAlignedGrid
SliverMasonryGrid
A sliver that places multiple box children in a two dimensional arrangement.
SliverMasonryGridParentData
Parent data structure used by RenderSliverMasonryGrid.
SliverPinnedToBoxAdapter
SliverQuiltedGridDelegate
Controls the layout of a quilted grid.
SliverSimpleGridDelegate
Controls the layout of tiles in a some slivers.
SliverSimpleGridDelegateWithFixedCrossAxisCount
Creates grid layouts with a fixed number of tiles in the cross axis.
SliverSimpleGridDelegateWithMaxCrossAxisExtent
Creates grid layouts with tiles that each have a maximum cross-axis extent.
SliverStairedGridDelegate
Controls the layout of tiles in a staired grid.
SliverWovenGridDelegate
Controls the layout of tiles in a woven grid.
StaggeredGrid
A grid which lays out children in a staggered arrangement. Each child can have a different size. Wrap your children with a StaggeredGridTile to specify their size if it's different from a 1x1 tile.
StaggeredGridTile
Represents the size of a StaggeredGrid's tile.
StairedGridTile
A tile of a staired pattern.
SystemUiOverlayStyleDark
SystemUiOverlayStyleLight
TabBarBox
TabBarMerge
TabBarTabBarView 外层添加 常用属性
TaurusFooter
Taurus footer. https://github.com/Yalantis/Taurus
TaurusHeader
Taurus header. https://github.com/Yalantis/Taurus
Toast
ToastContent
toast 文字和icon
ToastOptions
UnifiedButton
Universal
ValueBuilder<T>
Example:
ValueListenBuilder<T>
Example:
ValueNotifiers<T>
WheelOptions
WovenGridTile
A tile of a woven pattern.

Enums

BorderType
BuilderState
DateTimeDist
DecoratorPositioned
EasyRefreshType
刷新类型
FlAnimationStyle
GridStyle
IndicatorMode
The current state of the indicator (Header or Footer).
IndicatorPosition
The position of the indicator.
IndicatorResult
The status returned after the task is completed.
LoadingStyle
PopupFromStyle
弹窗进入方向属性
RoutePushStyle
TabBarLevelPosition
TabBarLevel 位置
TextInputLimitFormatter
ToastIconStyle
Toast类型 如果使用custom 请设置 customIcon
UnifiedButtonCategory

Constants

kBezierBackgroundDisappearDuration → const Duration
Default disappear animation duration.
kBezierCircleDisappearDuration → const Duration
kDefaultSecondaryCloseTriggerOffset → const double
The default secondary close trigger offset.
kDefaultSecondaryVelocity → const double
The default opening speed of the secondary.
kDeliveryDisappearDuration → const Duration
Delivery indicator disappear animation duration.
kDeliveryTriggerOffset → const double
Delivery indicator trigger offset.
kFlAnimationDuration → const Duration
kTaurusDisappearDuration → const Duration
Taurus indicator disappear animation duration.

Properties

isAndroid bool
no setter
isDebug bool
no setter
isDesktop bool
no setter
isFuchsia bool
no setter
isIOS bool
no setter
isLinux bool
no setter
isMacOS bool
no setter
isMobile bool
no setter
isProfile bool
no setter
isRelease bool
no setter
isWeb bool
no setter
isWindows bool
no setter

Functions

addObserver(WidgetsBindingObserver observer) → void
addPersistentFrameCallback(FrameCallback duration) → void
addPostFrameCallback(FrameCallback duration) → void
addTimingsCallback(TimingsCallback callback) → void
closeAllOverlay() → void
关闭所有Overlay
closeLoading() bool
closeOverlay({ExtendedOverlayEntry? entry}) bool
关闭最顶层的Overlay
closePopup([dynamic value]) Future<bool>
关闭弹窗 也可以通过 Navigator.of(context).maybePop()
closeToast() bool
kBezierFrictionFactor(double overscrollFraction) double
Friction factor used by bezier curves.
kBezierHorizontalFrictionFactor(double overscrollFraction) double
Horizontal friction factor used by bezier curves.
kBezierSpringBuilder({required IndicatorMode mode, required double offset, required double actualTriggerOffset, required double velocity}) SpringDescription
Spring used by bezier curves.
kCupertinoFrictionFactor(double overscrollFraction) double
kCupertinoHorizontalFrictionFactor(double overscrollFraction) double
kDefaultSemanticIndexCallback(Widget _, int localIndex) int
kMaterialFrictionFactor(double overscrollFraction) double
Friction factor used by material.
kMaterialHorizontalFrictionFactor(double overscrollFraction) double
Friction factor used by material horizontal.
kMaterialSpringBuilder({required IndicatorMode mode, required double offset, required double actualTriggerOffset, required double velocity}) SpringDescription
Spring description used by material.
log<T>(T msg) → void
maybePop<T extends Object>([T? result]) Future<bool>
可能返回到上一个页面
pop<T extends Object>([T? result, bool isMaybe = false]) Future<bool?>
返回上一个页面
popBack(Future navigator, {bool nullBack = false, bool useMaybePop = false}) → void
pop 返回简写 带参数 nullBack =true navigator 返回为空 就继续返回上一页面
popUntil(RoutePredicate predicate) → void
循环pop 直到pop至指定页面
push<T extends Object?, TO extends Object?>(Widget widget, {bool maintainState = true, bool fullscreenDialog = false, RoutePushStyle? pushStyle, RouteSettings? settings, bool allowSnapshotting = true, bool barrierDismissible = false, TO? result}) Future<T?>
打开新页面
pushAndRemoveUntil<T extends Object?>(Widget widget, {bool maintainState = true, bool fullscreenDialog = false, RoutePushStyle? pushStyle, RouteSettings? settings, RoutePredicate? predicate}) Future<T?>
打开新页面 并移出堆栈所有页面
pushReplacement<T extends Object?, TO extends Object?>(Widget widget, {bool maintainState = true, bool fullscreenDialog = false, RoutePushStyle? pushStyle, RouteSettings? settings, TO? result}) Future<T?>
打开新页面替换当前页面
removeObserver(WidgetsBindingObserver observer) → void
showLoading({Widget? custom, LoadingBuilder? builder, LoadingOptions? options, Widget? extra, LoadingProgressIndicator? progressIndicator, LoadingStyle? style}) ExtendedOverlayEntry?
loading 加载框 关闭 closeLoading();
showMenuPopup<T>({required RelativeRect position, required List<PopupMenuEntry<T>> items, T? initialValue, double? elevation, String? semanticLabel, ShapeBorder? shape, Color? color, bool useRootNavigator = false}) Future<T?>
showSnackBar(SnackBar snackBar) ScaffoldFeatureController<SnackBar, SnackBarClosedReason>?
showToast(String message, {ToastIconStyle? iconStyle, FlAnimationStyle? animationStyle, Duration? animationDuration, TextStyle? textStyle, Duration? duration, BoxDecoration? decoration, GestureTapCallback? onToastTap, ToastBuilder? builder, ToastOptions? options}) Future<ExtendedOverlayEntry?>
Toast 关闭 closeToast(); 添加 await Toast 关闭后继续执行之后的方法
when<T>(Map<bool, ValueGetter<T>> conditionMap) → T?
English: The when function of the Kotlin version of the method switch.
As long as the first true is found in Map.keys of conditionMap, its corresponding ValueGetter method will be executed immediately and the relative value will be returned.
If it is not found, it will return null; if you need a default value, you can add a MapEntry with a key equal to true at the end of the Map
whenTrue<T>(Map<ValueGetter<bool>, ValueGetter<T>> conditionMap) → T?
English: The when function of the Kotlin version of the method switch,its conditional expression will be calculated。.
As long as conditionMap to Map.keys appears first execution result is true, it will immediately perform corresponding ValueGetter method, and an opposite return value.
If it is not found, it will return null; if you need a default value, you can add a MapEntry with a key equal to true at the end of the Map
whenValue<V, T>(V value, Map<V, ValueGetter<T>> conditionMap) → T?
English: The super evolution version💖💖💖 of switch method, all basic types of values can be compared, including List, Map, Set, and Iterable.
All need do is value in Map.keys of conditionMap, its corresponding ValueGetter method will be executed

Typedefs

AsyncSnapshotBuilder<T> = Widget Function(BuildContext context, T data)
BezierSpinBuilder = Widget Function(BuildContext context, double value)
A builder that builds a spin widget. context BuildContext. value Animation value.
Callback = void Function()
******** Callback Zero ******** /// Callback Zero
CallbackFuture = Future<void> Function()
Future Callback Zero
CallbackFutureT<T> = Future<T> Function()
Future Callback Zero
CallbackT<T> = T Function()
Callback Zero
CanProcessCallBack = bool Function()
Indicator widget builder.
ChangedBuilderWidget<T> = Widget Function(T value, ValueChanged<T> onChanged)
CIMessageBuilder = Widget Function(BuildContext context, IndicatorState state, String text, DateTime dateTime)
Message widget builder.
CIPullIconBuilder = Widget Function(BuildContext context, IndicatorState state, double animation)
Pull icon widget builder.
CITextBuilder = Widget Function(BuildContext context, IndicatorState state, String text)
Text widget builder.
CustomBuilderContext = Widget Function(BuildContext context)
DecoratorBoxStateBuilder = Widget Function(FocusNode focusNode)
EasyRefreshControllerCallback = void Function(EasyRefreshController controller)
ERChildBuilder = Widget Function(BuildContext context, ScrollPhysics physics)
EasyRefresh child builder. Provide ScrollPhysics, and use it in your ScrollView. ScrollPhysics will not be scoped.
ERScrollBehaviorBuilder = ScrollBehavior Function(ScrollPhysics? physics)
ExtendedTextFieldBuilder = Widget Function(TextInputType keyboardType, List<TextInputFormatter> inputFormatters, Widget? suffix, Widget? prefix)
FlAnimationCallback = void Function(Function running)
FrictionFactor = double Function(double overscrollFraction)
The multiple applied to overscroll to make it appear that scrolling past the edge of the scrollable contents is harder than scrolling the list. This is done by reducing the ratio of the scroll effect output vs the scroll gesture input.
IndicatorBuilder = Widget Function(BuildContext context, IndicatorState state)
Indicator widget builder.
ListWheelStateBuilder = ListWheel Function(FixedExtentScrollController controller)
LoadingBuilder = Widget? Function(BuildContext context, LoadingContent content)
ModeChangeListener = void Function(IndicatorMode mode, double offset)
Mode change listener.
PopInvokedWithOverlayCallback = void Function(bool didPop, bool didCloseOverlay)
SecondaryIndicatorBuilder = Widget Function(BuildContext context, IndicatorState state, Indicator indicator)
Secondary indicator widget builder.
SpringBuilder = SpringDescription Function({required double actualTriggerOffset, required IndicatorMode mode, required double offset, required double velocity})
Build spring with IndicatorMode and offset. mode Indicator mode. offset Indicator offset. actualTriggerOffset Indicator actual trigger offset. velocity Indicator actual trigger offset.
ToastBuilder = Widget? Function(BuildContext context, ToastContent content)
ValueBuilderCallback<T> = Widget Function(BuildContext context, T? value, ValueCallback<T> updater)
ValueCallback<V> = void Function(V value)
Callback One
ValueCallbackFuture<V> = Future<void> Function(V value)
Future Callback One
ValueCallbackFutureT<T> = Future<T> Function(T value)
Future Callback One
ValueCallbackFutureTV<T, V> = Future<T> Function(V value)
Future Callback One
ValueCallbackT<T> = T Function(T value)
******** Callback One ******** /// Callback One
ValueCallbackTV<T, V> = T Function(V value)
Callback One
ValueFourCallback<V1, V2, V3, V4> = void Function(V1 value1, V2 value2, V3 value3, V4 value4)
******** Callback Four ******** /// Callback Four
ValueFourCallbackFuture<V1, V2, V3, V4> = Future<void> Function(V1 value1, V2 value2, V3 value3, V4 value4)
Future Callback Four
ValueFourCallbackFutureT<T, V1, V2, V3, V4> = Future<T> Function(V1 value1, V2 value2, V3 value3, V4 value4)
Future Callback Four T
ValueFourCallbackT<T, V1, V2, V3, V4> = T Function(V1 value1, V2 value2, V3 value3, V4 value4)
Callback Four T
ValueThreeCallback<V1, V2, V3> = void Function(V1 value1, V2 value2, V3 value3)
******** Callback Three ******** /// Callback Three
ValueThreeCallbackFuture<V1, V2, V3> = Future<void> Function(V1 value1, V2 value2, V3 value3)
Future Callback Three
ValueThreeCallbackFutureT<T, V1, V2, V3> = Future<T> Function(V1 value1, V2 value2, V3 value3)
Future Callback Three T
ValueThreeCallbackT<T, V1, V2, V3> = T Function(V1 value1, V2 value2, V3 value3)
Callback Three T
ValueTwoCallback<V1, V2> = void Function(V1 value1, V2 value2)
******** Callback Two ******** /// Callback Two
ValueTwoCallbackFuture<V1, V2> = Future<void> Function(V1 value1, V2 value2)
Callback Two T
ValueTwoCallbackFutureT<T, V1, V2> = Future<T> Function(V1 value1, V2 value2)
Future Callback Two T
ValueTwoCallbackT<T, V1, V2> = T Function(V1 value1, V2 value2)
Future Callback Two
ValueWaitChanged<T> = Future<T> Function(T value)