didvan-app/lib/widgets/didvan/scaffold.dart

45 lines
1.2 KiB
Dart

import 'package:didvan/models/view/app_bar_data.dart';
import 'package:didvan/widgets/didvan/app_bar.dart';
import 'package:flutter/material.dart';
class DidvanScaffold extends StatelessWidget {
final List<Widget>? slivers;
final AppBarData appBarData;
final bool hasPadding;
const DidvanScaffold({
Key? key,
this.slivers,
required this.appBarData,
this.hasPadding = true,
}) : super(key: key);
@override
Widget build(BuildContext context) {
return Scaffold(
body: CustomScrollView(
slivers: [
SliverAppBar(
backgroundColor: Theme.of(context).backgroundColor,
automaticallyImplyLeading: false,
pinned: true,
flexibleSpace: DidvanAppBar(appBarData: appBarData),
),
const SliverToBoxAdapter(
child: SizedBox(height: 16),
),
if (slivers != null)
SliverPadding(
padding: const EdgeInsets.symmetric(horizontal: 16),
sliver: SliverList(
delegate: SliverChildBuilderDelegate(
(context, index) => slivers![index],
childCount: slivers!.length,
),
),
),
],
),
);
}
}