initial
This commit is contained in:
30
lib/utils/bottom_sheet_page.dart
Normal file
30
lib/utils/bottom_sheet_page.dart
Normal file
@@ -0,0 +1,30 @@
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
class BottomSheetPage extends Page {
|
||||
const BottomSheetPage({
|
||||
required this.builder,
|
||||
this.fixed = false,
|
||||
});
|
||||
|
||||
final Widget Function(ScrollController? controller) builder;
|
||||
final bool fixed;
|
||||
|
||||
@override
|
||||
Route<void> createRoute(BuildContext context) {
|
||||
return ModalBottomSheetRoute(
|
||||
settings: this,
|
||||
isScrollControlled: !fixed,
|
||||
useSafeArea: true,
|
||||
showDragHandle: true,
|
||||
builder: (_) {
|
||||
if (!fixed) {
|
||||
return DraggableScrollableSheet(
|
||||
expand: false,
|
||||
builder: (_, scrollController) => builder(scrollController),
|
||||
);
|
||||
}
|
||||
return builder(null);
|
||||
},
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user