Моя проблема:
Я хочу скользить вверх и вниз по моему приложению и панели вкладок. Панель приложения и панель вкладок должны скользить вверх, когда я прокручиваю список вниз, и скользить вниз, когда я прокручиваю вверх, но он должен не только скользить вниз, когда я нахожусь в верхней части списка. Я надеюсь, вы понимаете мою проблему.
Вот мой исходный код:
import 'package:flutter/material.dart';
import '../screens/home_screen.dart';
import '../screens/home_screen_map_view.dart';
class TopTabsScreen extends StatefulWidget {
@override
_TopTabsScreenState createState() => _TopTabsScreenState();
}
class _TopTabsScreenState extends State<TopTabsScreen> {
@override
Widget build(BuildContext context) {
return DefaultTabController(
length: 2,
child: NestedScrollView(
headerSliverBuilder: (context, value) {
return [
SliverAppBar(
title: Center(
heightFactor: 0,
child: Padding(
padding: const EdgeInsets.only(top: 7),
child: Image.asset(
'assets/images/***.png',
fit: BoxFit.cover,
scale: MediaQuery.of(context).size.width * 0.007,
alignment: Alignment.bottomCenter,
),
),
),
expandedHeight: MediaQuery.of(context).size.height * 0.12,
primary: true,
floating: true,
pinned: true,
bottom: TabBar(
indicatorColor: Color.fromRGBO(253, 166, 41, 1.0),
tabs: <Widget>[
Tab(
icon: Icon(Icons.list),
),
Tab(
icon: Icon(Icons.location_on),
),
],
),
forceElevated: false,
flexibleSpace: Container(
decoration: BoxDecoration(
gradient: LinearGradient(
begin: Alignment.topCenter,
end: Alignment.bottomCenter,
colors: <Color>[
Color.fromRGBO(107, 176, 62, 1.0),
Color.fromRGBO(153, 199, 58, 1.0),
],
),
),
),
)
];
},
body: TabBarView(
children: <Widget>[
HomeScreen(),
HomeScreenMapView(),
],
),
),
);
}
}
Вот изображение текущего статуса: