거의 최종본

This commit is contained in:
girinb
2025-09-14 00:34:18 +09:00
parent 82b536be4b
commit bf06420d91
42 changed files with 202 additions and 81 deletions

View File

@@ -1,8 +1,7 @@
import 'dart:io';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:poet/poet_screen.dart';
import 'package:poet_repository/poet_screen.dart';
void main() {
WidgetsFlutterBinding.ensureInitialized();
@@ -28,6 +27,10 @@ class PoetStudyScreen extends StatefulWidget {
class _PoetStudyScreenState extends State<PoetStudyScreen>
with WidgetsBindingObserver {
// Variables to control grid spacing
final double _crossAxisSpacing = 1.0;
final double _mainAxisSpacing = 1.0;
@override
void initState() {
super.initState();
@@ -36,7 +39,7 @@ class _PoetStudyScreenState extends State<PoetStudyScreen>
}
void _setSystemUIOverlayStyle() {
if (Platform.isAndroid) {
if (defaultTargetPlatform == TargetPlatform.android) {
SystemChrome.setEnabledSystemUIMode(SystemUiMode.immersiveSticky);
}
}
@@ -45,7 +48,9 @@ class _PoetStudyScreenState extends State<PoetStudyScreen>
void dispose() {
WidgetsBinding.instance.removeObserver(this);
// When the main screen is disposed, restore the system UI
SystemChrome.setEnabledSystemUIMode(SystemUiMode.edgeToEdge);
if (defaultTargetPlatform == TargetPlatform.android) {
SystemChrome.setEnabledSystemUIMode(SystemUiMode.edgeToEdge);
}
super.dispose();
}
@@ -70,19 +75,21 @@ class _PoetStudyScreenState extends State<PoetStudyScreen>
),
// Main content
SafeArea(
child: Padding(
padding: const EdgeInsets.all(20.0),
child: Column(
children: [
Expanded(
child: Center(
Transform.translate(
offset: Offset(0.0, -40.0), // Move up by 40 pixels
child: Center(
child: Padding(
padding: const EdgeInsets.all(150.0),
child: Column(
mainAxisSize: MainAxisSize.min, // Use minimum space
children: [
Center(
child: GridView.builder(
gridDelegate:
const SliverGridDelegateWithFixedCrossAxisCount(
SliverGridDelegateWithFixedCrossAxisCount(
crossAxisCount: 3,
crossAxisSpacing: 15,
mainAxisSpacing: 15,
crossAxisSpacing: _crossAxisSpacing,
mainAxisSpacing: _mainAxisSpacing,
),
itemCount: 9,
shrinkWrap: true,
@@ -92,8 +99,20 @@ class _PoetStudyScreenState extends State<PoetStudyScreen>
},
),
),
),
],
SizedBox(height: 30), // Added space
Align(
alignment: Alignment.centerLeft,
child: Padding(
padding: const EdgeInsets.only(left: 5),
child: Image.asset(
'assets/images/title.webp',
width: 500, // Adjust as needed
height: 100, // Adjust as needed
),
),
),
],
),
),
),
),
@@ -119,8 +138,8 @@ class _PoetStudyScreenState extends State<PoetStudyScreen>
children: [
Image.asset(
'assets/images/go_subsets/Button_${(index + 1).toString().padLeft(2, '0')}.webp',
width: 325,
height: 325,
width: 260,
height: 260,
fit: BoxFit.contain,
),
],