NyApp class
A unified widget that combines theme management and localization.
This simplifies the app entry point by wrapping your MaterialApp with all necessary providers for themes and localization.
Example:
class Main extends StatelessWidget {
@override
Widget build(BuildContext context) {
return NyApp(
child: (themeData, locale) => MaterialApp(
theme: themeData,
locale: locale,
localizationsDelegates: NyLocalization.instance.delegates,
supportedLocales: [Locale('en', 'US')],
home: HomePage(),
),
);
}
}
Or use the materialApp factory for a more complete setup:
NyApp.materialApp(
navigatorKey: navigatorKey,
initialRoute: '/home',
onGenerateRoute: router.generator(),
onUnknownRoute: router.unknownRoute(),
navigatorObservers: [MyObserver()],
supportedLocales: [Locale('en', 'US'), Locale('es', 'ES')],
)
- Inheritance
- Available extensions
Constructors
Properties
- backgroundColor → Color?
-
Background color shown during loading.
final
- child → Widget Function(ThemeData? themeData, Locale locale)?
-
Builder function that receives theme data and locale.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- themeCurve → Curve
-
Curve of the theme transition animation.
final
- themeDuration → Duration
-
Duration of the theme transition animation.
final
Methods
-
connectiveOr(
{required Widget offline}) → Widget -
Available on Widget, provided by the ConnectiveExtension extension
Wraps the widget in a Connective that shows an offline placeholder. -
createElement(
) → StatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) → State< NyApp> -
Creates the mutable state for this widget at a given location in the tree.
override
-
debugDescribeChildren(
) → List< DiagnosticsNode> -
Returns a list of DiagnosticsNode objects describing this node's
children.
inherited
-
debugFillProperties(
DiagnosticPropertiesBuilder properties) → void -
Add additional properties associated with the node.
inherited
-
faderBottom(
{double strength = 0.2, Color color = Colors.black}) → FadeOverlay -
Available on StatefulWidget, provided by the NyStatefulExt extension
Make gradient fader from the bottom of the widget.strengthranges from 0.0 (subtle) to 1.0 (strong). -
faderFrom(
{double strength = 0.2, Color color = Colors.black, AlignmentGeometry begin = Alignment.topCenter, AlignmentGeometry end = Alignment.bottomCenter}) → FadeOverlay -
Available on StatefulWidget, provided by the NyStatefulExt extension
Make gradient fader with custom alignment.strengthranges from 0.0 (subtle) to 1.0 (strong). -
faderLeft(
{double strength = 0.2, Color color = Colors.black}) → FadeOverlay -
Available on StatefulWidget, provided by the NyStatefulExt extension
Make gradient fader from the left of the widget.strengthranges from 0.0 (subtle) to 1.0 (strong). -
faderRight(
{double strength = 0.2, Color color = Colors.black}) → FadeOverlay -
Available on StatefulWidget, provided by the NyStatefulExt extension
Make gradient fader from the right of the widget.strengthranges from 0.0 (subtle) to 1.0 (strong). -
faderTop(
{double strength = 0.2, Color color = Colors.black}) → FadeOverlay -
Available on StatefulWidget, provided by the NyStatefulExt extension
Make gradient fader from the top of the widget.strengthranges from 0.0 (subtle) to 1.0 (strong). -
flexible(
{Key? key, int flex = 1, FlexFit fit = FlexFit.loose}) → Flexible -
Available on StatefulWidget, provided by the NyStatefulExt extension
Make a StatefulWidget Flexible. -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
onlyOffline(
) → Widget -
Available on Widget, provided by the ConnectiveExtension extension
Only shows the widget when offline, otherwise shows nothing. -
onlyOnline(
) → Widget -
Available on Widget, provided by the ConnectiveExtension extension
Only shows the widget when online, otherwise shows nothing. -
pullable(
{required Future< void> onRefresh()?, PullableConfig? pullableConfig}) → Widget -
Available on Widget, provided by the NyWidgetExt extension
Make a widget pullable using the Pullable widget. -
toDiagnosticsNode(
{String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode -
Returns a debug representation of the object that is used by debugging
tools and by DiagnosticsNode.toStringDeep.
inherited
-
toSkeleton(
{Key? key, bool? ignoreContainers, bool? justifyMultiLineText, Color? containersColor, bool ignorePointers = true, bool enabled = true, PaintingEffect? effect, TextBoneBorderRadius? textBoneBorderRadius}) → Skeletonizer -
Available on Widget, provided by the NyWidgetExt extension
Make a widget a skeleton using theSkeletonizerpackage. -
toString(
{DiagnosticLevel minLevel = DiagnosticLevel.info}) → String -
A string representation of this object.
inherited
-
toStringDeep(
{String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) → String -
Returns a string representation of this node and its descendants.
inherited
-
toStringShallow(
{String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String -
Returns a one-line detailed description of the object.
inherited
-
toStringShort(
) → String -
A short, textual description of this widget.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
materialApp(
{Key? key, String? initialRoute, Route? onGenerateRoute(RouteSettings settings)?, Route? onUnknownRoute(RouteSettings settings)?, List< Locale> supportedLocales = const [Locale('en', 'US')], ThemeMode themeMode = ThemeMode.system, bool debugShowCheckedModeBanner = false, bool debugShowMaterialGrid = false, bool showPerformanceOverlay = false, bool checkerboardRasterCacheImages = false, bool checkerboardOffscreenLayers = false, bool showSemanticsDebugger = false, Duration themeDuration = const Duration(milliseconds: 200), Curve themeCurve = Curves.easeInOut, Color? backgroundColor, Widget? home, String? title, Widget builder(BuildContext, Widget?)?, Locale? localeResolutionCallback(Locale?, Iterable<Locale> )?}) → Widget - Factory constructor for a complete MaterialApp setup.
-
restart(
BuildContext context) → void - Restart the app (useful after language changes).