Skip to content

Commit 37a544b

Browse files
committed
extract appbar into shared
1 parent ded9752 commit 37a544b

File tree

5 files changed

+34
-10
lines changed

5 files changed

+34
-10
lines changed

lib/screens/checkin.screen.dart

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,17 @@
11
import 'package:flutter/material.dart';
2+
import 'package:get/get.dart';
3+
import 'package:symptom_tracker/screens/screens.dart';
4+
import 'package:symptom_tracker/shared/shared.dart';
25

36
class CheckinScreen extends StatelessWidget {
47
@override
58
Widget build(BuildContext context) {
69
return Scaffold(
7-
appBar: AppBar(
8-
backgroundColor: Colors.transparent,
9-
title: Text('Checkin Screen'),
10+
appBar: SharedAppBar(
11+
title: 'Check-in',
12+
actions: [
13+
IconButton(icon: Icon(Icons.close), onPressed: () => Get.offAll(HomeScreen())),
14+
],
1015
),
1116
body: SafeArea(
1217
child: Center(

lib/screens/dashboard.screen.dart

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,17 @@
11
import 'package:flutter/material.dart';
22
import 'package:get/get.dart';
33
import 'package:symptom_tracker/screens/screens.dart';
4+
import 'package:symptom_tracker/shared/shared.dart';
45

56
class DashboardScreen extends StatelessWidget {
67
@override
78
Widget build(BuildContext context) {
89
return Scaffold(
9-
appBar: AppBar(
10-
backgroundColor: Colors.transparent,
11-
title: Text('Dashboard Screen'),
10+
appBar: SharedAppBar(
11+
title: 'Dashboard Screen',
12+
actions: [
13+
IconButton(icon: Icon(Icons.close), onPressed: () => Get.offAll(HomeScreen())),
14+
],
1215
),
1316
body: SafeArea(
1417
child: Center(

lib/screens/home.screen.dart

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,13 @@
11
import 'package:flutter/material.dart';
22
import 'package:get/get.dart';
33
import 'package:symptom_tracker/screens/screens.dart';
4+
import 'package:symptom_tracker/shared/app_bar.dart';
45

56
class HomeScreen extends StatelessWidget {
67
@override
78
Widget build(BuildContext context) {
89
return Scaffold(
9-
appBar: AppBar(
10-
backgroundColor: Colors.transparent,
11-
title: Text('Home Screen'),
12-
),
10+
appBar: SharedAppBar(title: 'Hello AMIA'),
1311
body: SafeArea(
1412
child: Center(
1513
child: Text('Home Screen'),

lib/shared/app_bar.dart

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import 'package:flutter/material.dart';
2+
import 'package:get/get.dart';
3+
4+
class SharedAppBar extends AppBar {
5+
SharedAppBar({@required String title, List<Widget> actions})
6+
: super(
7+
backgroundColor: Colors.transparent,
8+
elevation: 0,
9+
title: title != null
10+
? Text(
11+
title,
12+
style: Get.theme.textTheme.headline6,
13+
)
14+
: null,
15+
actions: actions,
16+
);
17+
}

lib/shared/shared.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export 'app_bar.dart';

0 commit comments

Comments
 (0)