使用 flutter实现吸顶
·
CustomScrollView( slivers:
main,dert
CustomScrollView(
slivers: [
SliverToBoxAdapter(child: Inputwidgets()),
SliverToBoxAdapter(child: SizedBox(height: 12.w)),
SliverToBoxAdapter(child: SwiperWidgets()),
SliverToBoxAdapter(child: GridnavWidgets()),
SliverToBoxAdapter(child: TimeActiveWidgets()),
TextWidgets(),
TextWidgets
import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
class _SimpleSliverDelegate1 extends SliverPersistentHeaderDelegate {
final double height;
final Widget child;
_SimpleSliverDelegate1({required this.height, required this.child});
@override
Widget build(BuildContext context, double shrinkOffset, bool overlapsContent) {
return SizedBox(
height: height,
child: child,
);
}
@override
double get maxExtent => height;
@override
double get minExtent => height;
@override
bool shouldRebuild(covariant _SimpleSliverDelegate1 oldDelegate) {
return oldDelegate.child != child || oldDelegate.height != height;
}
}
class TextWidgets extends StatefulWidget {
const TextWidgets({super.key});
@override
State<TextWidgets> createState() => _TextWidgetsState();
}
class _TextWidgetsState extends State<TextWidgets> {
@override
Widget build(BuildContext context) {
return Container(
child: SliverPersistentHeader(
pinned: true,
delegate:_SimpleSliverDelegate1(
height: 50.w,
child: Container(
width: double.infinity,
decoration: BoxDecoration(
color:Color.fromRGBO(0,0,0,1),
),
)
)
),
);
}
}
这样滑动后TextWidgets 就固定了
更多推荐

所有评论(0)