Flutter AppBar, With Icon, Title and Actions Link
Flutter AppBar Skeleton |
Here's example code of AppBar in Flutter with icon, title and action:
import 'package:flutter/material.dart'; void main() { runApp(new MyApp()); } class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { return new MaterialApp( title: 'Generated App', theme: new ThemeData( primarySwatch: Colors.blue, primaryColor: const Color(0xFF2196f3), accentColor: const Color(0xFF2196f3), canvasColor: const Color(0xFFfafafa), ), home: new MyHomePage(), ); } } class MyHomePage extends StatefulWidget { MyHomePage({Key key}) : super(key: key); @override _MyHomePageState createState() => new _MyHomePageState(); } class _MyHomePageState extends State{ @override Widget build(BuildContext context) { return new Scaffold( appBar: AppBar( title: new Text('App Name'), actions: [ // action button IconButton( icon: Icon( Icons.search ), onPressed: () { }, ), ], leading: IconButton( icon: Image.asset('assets/logo.png'), onPressed: () { }, ), ), ); } }
Don't forget to add asset for your mobile app logo in the pubspec.yaml like this, and add your image named logo.png inside assets directory.
assets:
- assets/logo.png
I can't explains that much about the codes above, it is just simple UI, it is pretty straight forward and easy to read. But here's some explanation:
- Scaffold is they main layout of our mobile app, there's parameter appBar where you can add your customize app bar
- AppBar is the class for displaying your app bar, the actions parameter is the action located on the right of app bar. leading is located on the front of app bar and title is text located on the center of app bar after the leading icon. The default leading icon is arrow left icon.
In Flutter, you can customize the look of your app bar whatever you like, although it is better to just follow their default API, which you can see here https://api.flutter.dev/flutter/material/AppBar-class.html, AppBar class API documentation.
AppBar is based on Material design principle here https://material.io/components/app-bars-top/. Although it is Material design for android, it can also work the same deliciousness in IOS.