CupertinoApp class
An application that uses Cupertino design.
A convenience widget that wraps a number of widgets that are commonly required for an iOS-design targeting application. It builds upon a WidgetsApp by iOS specific defaulting such as fonts and scrolling physics.
The CupertinoApp configures the top-level Navigator to search for routes in the following order:
-
For the
/
route, the home property, if non-null, is used. -
Otherwise, the routes table is used, if it has an entry for the route.
-
Otherwise, onGenerateRoute is called, if provided. It should return a non-null value for any valid route not handled by home and routes.
-
Finally if all else fails onUnknownRoute is called.
If home, routes, onGenerateRoute, and onUnknownRoute are all null, and builder is not null, then no Navigator is created.
This widget also configures the observer of the top-level Navigator (if any) to perform Hero animations.
Use this widget with caution on Android since it may produce behaviors Android users are not expecting such as:
- Pages will be dismissible via a back swipe.
- Scrolling past extremities will trigger iOS-style spring overscrolls.
- The San Francisco font family is unavailable on Android and can result in undefined font behavior.
See also:
- CupertinoPageScaffold, which provides a standard page layout default with nav bars.
- Navigator, which is used to manage the app's stack of pages.
- CupertinoPageRoute, which defines an app page that transitions in an iOS-specific way.
- WidgetsApp, which defines the basic app elements but does not depend on the Cupertino library.
- Inheritance
- Object
- Diagnosticable
- DiagnosticableTree
- Widget
- StatefulWidget
- CupertinoApp
Constructors
-
CupertinoApp({Key key, Widget home, Map<
String, WidgetBuilder> routes: const {} , String initialRoute, RouteFactory onGenerateRoute, RouteFactory onUnknownRoute, TransitionBuilder builder, String title: '', GenerateAppTitle onGenerateTitle, Color color, Locale locale, Iterable<LocalizationsDelegate> localizationsDelegates, LocaleListResolutionCallback localeListResolutionCallback, LocaleResolutionCallback localeResolutionCallback, Iterable< Locale> supportedLocales: const [Locale('en', 'US')] , bool showPerformanceOverlay: false, bool checkerboardRasterCacheImages: false, bool checkerboardOffscreenLayers: false, bool showSemanticsDebugger: false, bool debugShowCheckedModeBanner: true }) -
Creates a CupertinoApp. [...]
const
Properties
- builder → TransitionBuilder
-
A builder for inserting widgets above the Navigator but below the other
widgets created by the WidgetsApp widget, or for replacing the
Navigator entirely. [...]
final
- checkerboardOffscreenLayers → bool
-
Turns on checkerboarding of layers rendered to offscreen bitmaps.
final
- checkerboardRasterCacheImages → bool
-
Turns on checkerboarding of raster cache images.
final
- color → Color
-
The primary color to use for the application in the operating system
interface. [...]
final
- debugShowCheckedModeBanner → bool
-
Turns on a little "DEBUG" banner in checked mode to indicate
that the app is in checked mode. This is on by default (in
checked mode), to turn it off, set the constructor argument to
false. In release mode this has no effect. [...]
final
- home → Widget
-
The widget for the default route of the app (Navigator.defaultRouteName,
which is
/
). [...]final - initialRoute → String
-
The name of the first route to show, if a Navigator is built. [...]
final
- locale → Locale
-
The initial locale for this app's Localizations widget is based
on this value. [...]
final
- localeListResolutionCallback → LocaleListResolutionCallback
-
This callback is responsible for choosing the app's locale
when the app is started, and when the user changes the
device's locale. [...]
final
- localeResolutionCallback → LocaleResolutionCallback
-
null [...]
final
-
localizationsDelegates
→ Iterable<
LocalizationsDelegate> -
The delegates for this app's Localizations widget. [...]
final
-
A key to use when building the Navigator. [...]
final
-
The list of observers for the Navigator created for this app. [...]
final
- onGenerateRoute → RouteFactory
-
The route generator callback used when the app is navigated to a
named route. [...]
final
- onGenerateTitle → GenerateAppTitle
-
If non-null this callback function is called to produce the app's
title string, otherwise title is used. [...]
final
- onUnknownRoute → RouteFactory
-
Called when onGenerateRoute fails to generate a route, except for the
initialRoute. [...]
final
-
routes
→ Map<
String, WidgetBuilder> -
The application's top-level routing table. [...]
final
- showPerformanceOverlay → bool
-
Turns on a performance overlay. [...]
final
- showSemanticsDebugger → bool
-
Turns on an overlay that shows the accessibility information
reported by the framework.
final
-
supportedLocales
→ Iterable<
Locale> -
The list of locales that this app has been localized for. [...]
final
- title → String
-
A one-line description used by the device to identify the app for the user. [...]
final
- hashCode → int
-
The hash code for this object. [...]
read-only, inherited
- key → Key
-
Controls how one widget replaces another widget in the tree. [...]
final, inherited
- runtimeType → Type
-
A representation of the runtime type of the object.
read-only, inherited
Methods
-
createState(
) → _CupertinoAppState -
Creates the mutable state for this widget at a given location in the tree. [...]
override
-
createElement(
) → StatefulElement -
Creates a StatefulElement to manage this widget's location in the tree. [...]
inherited
-
debugDescribeChildren(
) → List< DiagnosticsNode> -
Returns a list of DiagnosticsNode objects describing this node's
children. [...]
@protected, inherited
-
debugFillProperties(
DiagnosticPropertiesBuilder properties) → void -
Add additional properties associated with the node. [...]
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a non-existent method or property is accessed. [...]
inherited
-
toDiagnosticsNode(
{String name, DiagnosticsTreeStyle style }) → DiagnosticsNode -
Returns a debug representation of the object that is used by debugging
tools and by toStringDeep. [...]
inherited
-
toString(
{DiagnosticLevel minLevel: DiagnosticLevel.debug }) → String -
Returns a string representation of this object.
inherited
-
toStringDeep(
{String prefixLineOne: '', String prefixOtherLines, DiagnosticLevel minLevel: DiagnosticLevel.debug }) → 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 ==(
dynamic other) → bool -
The equality operator. [...]
inherited
Static Methods
-
createCupertinoHeroController(
) → HeroController - The HeroController used for Cupertino page transitions. [...]