PlatformAppBar class
A platform-adaptive app bar that renders Material AppBar on Android and CupertinoNavigationBar on iOS.
This widget automatically selects the appropriate app bar implementation based on the target platform:
- On Android: renders Material Design AppBar
- On iOS: renders CupertinoNavigationBar
The app bar can be configured with platform-specific data through materialAppBarData and cupertinoNavigationBarData, or with common properties.
Example:
PlatformAppBar(
title: Text('My App'),
leading: IconButton(
icon: Icon(Icons.menu),
onPressed: () => Scaffold.of(context).openDrawer(),
),
)
- Implemented types
Constructors
- PlatformAppBar({Key? widgetKey, MaterialAppBarData? materialAppBarData, Widget? title, Color? backgroundColor, Widget? leading, bool automaticallyImplyLeading = kAutoImplyLeading, PreferredSizeWidget? bottom})
-
Creates a platform-adaptive app bar.
const
Properties
- automaticallyImplyLeading → bool
-
Whether to automatically imply a leading widget.
final
- backgroundColor → Color?
-
Background color of the app bar.
final
- bottom → PreferredSizeWidget?
-
Widget to display below the app bar.
final
-
Cupertino-specific navigation bar data.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- leading → Widget?
-
Widget to display before the title.
final
- materialAppBarData → MaterialAppBarData?
-
Material-specific app bar data.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- title → Widget?
-
The primary title of the app bar.
final
- widgetKey → Key?
-
Optional key for the app bar widget.
final
Methods
-
cupertinoBuilder(
BuildContext context) → ObstructingPreferredSizeWidget -
Builds a Cupertino ObstructingPreferredSizeWidget for iOS.
override
-
materialBuilder(
BuildContext context) → PreferredSizeWidget -
Builds a Material PreferredSizeWidget for Android.
override
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited