// Copyright 2014 The Flutter Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. import 'package:flutter/material.dart'; /// Flutter code sample for [NestedScrollView]. void main() => runApp(const NestedScrollViewExampleApp()); class NestedScrollViewExampleApp extends StatelessWidget { const NestedScrollViewExampleApp({super.key}); @override Widget build(BuildContext context) { return const MaterialApp( home: NestedScrollViewExample(), ); } } class NestedScrollViewExample extends StatelessWidget { const NestedScrollViewExample({super.key}); @override Widget build(BuildContext context) { return Scaffold( body: NestedScrollView( // Setting floatHeaderSlivers to true is required in order to float // the outer slivers over the inner scrollable. floatHeaderSlivers: true, headerSliverBuilder: (BuildContext context, bool innerBoxIsScrolled) { return <Widget>[ SliverAppBar( title: const Text('Floating Nested SliverAppBar'), floating: true, expandedHeight: 200.0, forceElevated: innerBoxIsScrolled, ), ]; }, body: ListView.builder( padding: const EdgeInsets.all(8), itemCount: 30, itemBuilder: (BuildContext context, int index) { return SizedBox( height: 50, child: Center(child: Text('Item $index')), ); }))); } }