From 9aaf00e6275616f4ff3086b0fb4ae98c2036c4fb Mon Sep 17 00:00:00 2001 From: Orangerot Date: Sun, 22 Dec 2024 17:41:14 +0100 Subject: feat: level layout --- lib/level.dart | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 lib/level.dart (limited to 'lib/level.dart') diff --git a/lib/level.dart b/lib/level.dart new file mode 100644 index 0000000..c92658b --- /dev/null +++ b/lib/level.dart @@ -0,0 +1,61 @@ +import 'package:flutter/material.dart'; + +class Level extends StatelessWidget { + const Level({super.key}); + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + leading: Icon(Icons.pause), + title: Text('Level 1'), + actions: [ + IconButton( + icon: Icon(Icons.close), + onPressed: () => Navigator.pop(context)) + ], + ), + body: Stack(children: [ + Arrow( position: -100.0,), + Arrow( position: 00.0,), + Arrow( position: 100.0,), + Arrow( position: 200.0,), + Positioned( + top: 50, + width: MediaQuery.of(context).size.width, + left: 0, + child: Text( + "Great!", + textScaler: TextScaler.linear(4), + textAlign: TextAlign.center, + ), + ), + Positioned( + left: MediaQuery.of(context).size.width / 2 - 50, + bottom: 50, + child: Container( + width: 100, + height: 100, + decoration: BoxDecoration( + shape: BoxShape.circle, + // color: Colors.blue, + border: Border.all(color: Colors.black, width: 10)), + ), + ), + ])); + } +} + +class Arrow extends StatelessWidget { + final double position; + + const Arrow({super.key, required this.position}); + + @override + Widget build(BuildContext context) { + return Positioned( + left: MediaQuery.of(context).size.width / 2 - 25, // Center the arrow + top: position, + child: Icon(size: 100, Icons.arrow_forward), + ); + } +} -- cgit v1.2.3