38 lines
965 B
Dart
38 lines
965 B
Dart
|
import 'package:flutter/material.dart';
|
||
|
|
||
|
class SliverPersistentHeaderPadding extends StatelessWidget {
|
||
|
final double maxHeight;
|
||
|
|
||
|
const SliverPersistentHeaderPadding({required this.maxHeight});
|
||
|
|
||
|
@override
|
||
|
Widget build(BuildContext context) {
|
||
|
return SliverPersistentHeader(
|
||
|
delegate: _SliverPersistentHeaderPaddingDelegate(maxHeight: maxHeight,),
|
||
|
floating: false,
|
||
|
pinned: false,
|
||
|
);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
class _SliverPersistentHeaderPaddingDelegate extends SliverPersistentHeaderDelegate {
|
||
|
final double maxHeight;
|
||
|
|
||
|
const _SliverPersistentHeaderPaddingDelegate({required this.maxHeight});
|
||
|
|
||
|
@override
|
||
|
Widget build(BuildContext context, double shrinkOffset, bool overlapsContent) {
|
||
|
return Container();
|
||
|
}
|
||
|
|
||
|
@override
|
||
|
double get maxExtent => maxHeight;
|
||
|
|
||
|
@override
|
||
|
double get minExtent => 0;
|
||
|
|
||
|
@override
|
||
|
bool shouldRebuild(covariant SliverPersistentHeaderDelegate oldDelegate) {
|
||
|
return oldDelegate.maxExtent != maxExtent;
|
||
|
}
|
||
|
}
|