Added Profile widget to Settings page

This commit is contained in:
2026-03-06 07:54:57 +01:00
parent 34071020cd
commit d30941e609
2 changed files with 55 additions and 5 deletions

View File

@@ -1,6 +1,8 @@
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:frontend_splatournament_manager/widgets/theme_selector_widget.dart'; import 'package:frontend_splatournament_manager/widgets/theme_selector_widget.dart';
import '../widgets/profile_widget.dart';
class SettingsPage extends StatefulWidget { class SettingsPage extends StatefulWidget {
const SettingsPage({super.key}); const SettingsPage({super.key});
@@ -13,11 +15,15 @@ class _SettingsPageState extends State<SettingsPage> {
Widget build(BuildContext context) { Widget build(BuildContext context) {
return Scaffold( return Scaffold(
appBar: AppBar(title: Text("Splatournament")), appBar: AppBar(title: Text("Splatournament")),
body: Center( body: Column(
child: Column( children: [
SizedBox(height: 24),
ProfileWidget(),
Column(
mainAxisSize: MainAxisSize.min, mainAxisSize: MainAxisSize.min,
children: [ThemeSelectorWidget()], children: [ThemeSelectorWidget()],
), ),
],
), ),
); );
} }

View File

@@ -0,0 +1,44 @@
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:frontend_splatournament_manager/state_provider.dart';
import 'package:provider/provider.dart';
class ProfileWidget extends StatefulWidget {
const ProfileWidget({super.key});
@override
State<ProfileWidget> createState() => _ProfileWidgetState();
}
class _ProfileWidgetState extends State<ProfileWidget> {
final TextEditingController teamController = TextEditingController(
text: 'Team Name',
);
@override
Widget build(BuildContext context) {
return Consumer<StateProvider>(
builder: (context, provider, child) {
return Column(
children: [
SizedBox(
height: 128,
width: 128,
child: CircleAvatar(
backgroundImage: NetworkImage(
"https://i.postimg.cc/0jqKB6mS/Profile-Image.png",
),
),
),
SizedBox(height: 8),
Text("Name", style: TextStyle(fontSize: 36)),
Container(
margin: EdgeInsets.fromLTRB(48, 8, 48, 0),
child: TextFormField(controller: teamController),
),
],
);
},
);
}
}