mirror of
https://github.com/GitJournal/GitJournal.git
synced 2025-06-29 18:38:36 +08:00
PurchaseScreen: Allow it to be scrolled
Maybe for really small screens?
This commit is contained in:
@ -1,4 +1,5 @@
|
|||||||
import 'dart:async';
|
import 'dart:async';
|
||||||
|
import 'dart:math';
|
||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/services.dart';
|
import 'package:flutter/services.dart';
|
||||||
@ -101,9 +102,8 @@ class _PurchaseScreenState extends State<PurchaseScreen> {
|
|||||||
mainAxisAlignment: MainAxisAlignment.spaceAround,
|
mainAxisAlignment: MainAxisAlignment.spaceAround,
|
||||||
);
|
);
|
||||||
|
|
||||||
w = Container(
|
w = _SingleChildScrollViewExpanded(
|
||||||
child: SafeArea(child: w),
|
child: SafeArea(child: w),
|
||||||
color: theme.scaffoldBackgroundColor,
|
|
||||||
padding: const EdgeInsets.all(16.0),
|
padding: const EdgeInsets.all(16.0),
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -237,3 +237,26 @@ class EmptyAppBar extends StatelessWidget implements PreferredSizeWidget {
|
|||||||
@override
|
@override
|
||||||
Size get preferredSize => const Size(0.0, 0.0);
|
Size get preferredSize => const Size(0.0, 0.0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
class _SingleChildScrollViewExpanded extends StatelessWidget {
|
||||||
|
final Widget child;
|
||||||
|
final EdgeInsetsGeometry padding;
|
||||||
|
|
||||||
|
_SingleChildScrollViewExpanded({this.child, this.padding});
|
||||||
|
|
||||||
|
@override
|
||||||
|
Widget build(BuildContext context) {
|
||||||
|
return LayoutBuilder(
|
||||||
|
builder: (BuildContext context, BoxConstraints constraints) {
|
||||||
|
return SingleChildScrollView(
|
||||||
|
child: ConstrainedBox(
|
||||||
|
constraints: BoxConstraints.tightFor(
|
||||||
|
height: max(100, constraints.maxHeight)),
|
||||||
|
child: child,
|
||||||
|
),
|
||||||
|
padding: padding,
|
||||||
|
);
|
||||||
|
},
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Reference in New Issue
Block a user