Skip to content

Commit f4debc9

Browse files
committed
Create Hamburger Menu Button
1 parent 569b539 commit f4debc9

File tree

2 files changed

+52
-42
lines changed

2 files changed

+52
-42
lines changed

lib/components/blog.dart

Lines changed: 51 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ import 'package:minimal/components/color.dart';
44
import 'package:minimal/components/spacing.dart';
55
import 'package:minimal/components/text.dart';
66
import 'package:minimal/components/typography.dart';
7-
import 'package:minimal/pages/page_post.dart';
8-
import 'package:minimal/pages/page_typography.dart';
7+
import 'package:minimal/pages/pages.dart';
8+
import 'package:responsive_framework/responsive_framework.dart';
99

1010
class ImageWrapper extends StatelessWidget {
1111
final String image;
@@ -355,52 +355,62 @@ class MinimalMenuBar extends StatelessWidget {
355355
letterSpacing: 3,
356356
fontWeight: FontWeight.w500)),
357357
),
358-
Flexible(
359-
child: Container(
360-
alignment: Alignment.centerRight,
361-
child: Wrap(
362-
children: <Widget>[
363-
TextButton(
364-
onPressed: () => Navigator.popUntil(context,
365-
ModalRoute.withName(Navigator.defaultRouteName)),
366-
style: menuButtonStyle,
367-
child: const Text(
368-
"HOME",
358+
if (ResponsiveBreakpoints.of(context).isMobile) ...[
359+
const Spacer(),
360+
Transform.translate(
361+
offset: const Offset(16, 0),
362+
child: IconButton(
363+
icon: const Icon(Icons.menu),
364+
onPressed: () {},
365+
),
366+
)
367+
] else
368+
Flexible(
369+
child: Container(
370+
alignment: Alignment.centerRight,
371+
child: Wrap(
372+
children: <Widget>[
373+
TextButton(
374+
onPressed: () => Navigator.popUntil(context,
375+
ModalRoute.withName(Navigator.defaultRouteName)),
376+
style: menuButtonStyle,
377+
child: const Text(
378+
"HOME",
379+
),
369380
),
370-
),
371-
TextButton(
372-
onPressed: () {},
373-
style: menuButtonStyle,
374-
child: const Text(
375-
"PORTFOLIO",
381+
TextButton(
382+
onPressed: () {},
383+
style: menuButtonStyle,
384+
child: const Text(
385+
"PORTFOLIO",
386+
),
376387
),
377-
),
378-
TextButton(
379-
onPressed: () =>
380-
Navigator.pushNamed(context, TypographyPage.name),
381-
style: menuButtonStyle,
382-
child: const Text(
383-
"STYLE",
388+
TextButton(
389+
onPressed: () =>
390+
Navigator.pushNamed(context, TypographyPage.name),
391+
style: menuButtonStyle,
392+
child: const Text(
393+
"STYLE",
394+
),
384395
),
385-
),
386-
TextButton(
387-
onPressed: () {},
388-
style: menuButtonStyle,
389-
child: const Text(
390-
"ABOUT",
396+
TextButton(
397+
onPressed: () {},
398+
style: menuButtonStyle,
399+
child: const Text(
400+
"ABOUT",
401+
),
391402
),
392-
),
393-
TextButton(
394-
onPressed: () {},
395-
style: menuButtonStyle,
396-
child: const Text(
397-
"CONTACT",
403+
TextButton(
404+
onPressed: () {},
405+
style: menuButtonStyle,
406+
child: const Text(
407+
"CONTACT",
408+
),
398409
),
399-
),
400-
],
410+
],
411+
),
401412
),
402413
),
403-
),
404414
],
405415
),
406416
),

lib/main.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,13 @@ class MyApp extends StatelessWidget {
1515
// Wrapping the app with a builder method makes breakpoints
1616
// accessible throughout the widget tree.
1717
builder: (context, child) => ResponsiveBreakpoints.builder(
18-
child: child!,
1918
breakpoints: [
2019
const Breakpoint(start: 0, end: 450, name: MOBILE),
2120
const Breakpoint(start: 451, end: 800, name: TABLET),
2221
const Breakpoint(start: 801, end: 1920, name: DESKTOP),
2322
const Breakpoint(start: 1921, end: double.infinity, name: '4K'),
2423
],
24+
child: child!,
2525
),
2626
initialRoute: '/',
2727
onGenerateRoute: (RouteSettings settings) {

0 commit comments

Comments
 (0)