Implemented breaking points for varios screen sizes

This commit is contained in:
2024-12-03 00:54:49 +01:00
parent 69675f42e2
commit 634ecce4d9
5 changed files with 185 additions and 83 deletions

View File

@@ -30,7 +30,10 @@ class ContentListTile extends StatelessWidget {
Row(
mainAxisAlignment: MainAxisAlignment.start,
children: [
if (name != null) Text(name!),
if (name != null)
Text(
name!,
),
if (location != null) Text(', $location'),
if (title != null && Breakpoints.xl < width) Text(' - $title'),
],
@@ -39,8 +42,26 @@ class ContentListTile extends StatelessWidget {
],
),
titleAlignment: ListTileTitleAlignment.titleHeight,
subtitle: description != null ? Text(description!) : null,
trailing: startDate != null && endDate != null
subtitle: description != null
? Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
const Padding(padding: EdgeInsets.only(top: 8)),
if (startDate != null &&
endDate != null &&
Breakpoints.sm >= width)
Padding(
padding: const EdgeInsets.only(bottom: 8),
child: Text(
_getTimeString(startDate!, endDate!),
style: Theme.of(context).textTheme.labelSmall,
),
),
Text(description!),
],
)
: null,
trailing: startDate != null && endDate != null && Breakpoints.sm < width
? Text(_getTimeString(startDate!, endDate!))
: null,
);

View File

@@ -27,6 +27,7 @@ class ContentBox extends StatelessWidget {
title,
style: Theme.of(context).textTheme.headlineMedium,
),
const Padding(padding: EdgeInsets.only(bottom: 8)),
ListView.builder(
shrinkWrap: true,
itemCount: content.length,

View File

@@ -6,33 +6,39 @@ class Profile extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Card(
child: Padding(
padding: const EdgeInsets.all(20),
child: Column(
children: [
Container(
constraints: const BoxConstraints(maxWidth: 200),
child: ClipRRect(
borderRadius: BorderRadius.circular(180),
child: Image.asset('assets/profile.jpg'),
child: SizedBox(
width: double.infinity,
child: Padding(
padding: const EdgeInsets.all(20),
child: Column(
children: [
Container(
constraints: const BoxConstraints(maxWidth: 200),
child: ClipRRect(
borderRadius: BorderRadius.circular(180),
child: Image.asset('assets/profile.jpg'),
),
),
),
const Padding(padding: EdgeInsets.symmetric(vertical: 5)),
Text(
'Marco Skupin',
style: Theme.of(context).textTheme.displayMedium,
),
const Padding(padding: EdgeInsets.symmetric(vertical: 5)),
Text(
'Master of Science',
style: Theme.of(context).textTheme.titleLarge,
),
const Padding(padding: EdgeInsets.symmetric(vertical: 5)),
Text(
'marco@skup.in',
style: Theme.of(context).textTheme.bodyMedium,
),
],
const Padding(padding: EdgeInsets.symmetric(vertical: 5)),
Text(
'Marco Skupin',
textAlign: TextAlign.center,
style: Theme.of(context).textTheme.displayMedium,
),
const Padding(padding: EdgeInsets.symmetric(vertical: 5)),
Text(
'Master of Science',
textAlign: TextAlign.center,
style: Theme.of(context).textTheme.titleLarge,
),
const Padding(padding: EdgeInsets.symmetric(vertical: 5)),
Text(
'marco@skup.in',
textAlign: TextAlign.center,
style: Theme.of(context).textTheme.bodyMedium,
),
],
),
),
),
);

View File

@@ -17,6 +17,7 @@ class SkillListTile extends StatelessWidget {
title: Row(
children: [
Expanded(flex: 2, child: Text(name)),
const Padding(padding: EdgeInsets.only(bottom: 8)),
if (percentage != null)
Expanded(
flex: 5,