проблема со свернутым дочерним элементом постоянного заголовка ленты

ниже приведен код постоянного заголовка со свернутым и развернутым дочерними элементами. при прокрутке свернутый ребенок не щелкает, а просто отображается. это проблема из стека и есть ли способ ее обойти. Я считаю, что это из стека, но я не знаю, как его обойти. класс предназначен для постоянного заголовка, а дочерние элементы - это свернутые дочерний элемент и дочерний элемент

      class _SliverAppbarDelegate extends SliverPersistentHeaderDelegate {
  final double minHeight;
  final double maxHeight;
  final Widget child;
 // final Widget collapsedchild;
  bool shrink;
  ScrollPosition _position;

  _SliverAppbarDelegate({
    @required this.minHeight,
   // @required this.collapsedchild,
    @required this.maxHeight,
    @required this.child,
  });

 
  @override
  double get minExtent => minHeight;
  @override
  double get maxExtent => maxHeight;
   
  @override
  Widget build(
      BuildContext context, double shrinkOffset, bool overlapsContent) {
   
       
   
      return Stack(children: [
         Opacity(opacity: disappear(shrinkOffset), child: child),buildAppbar(shrinkOffset),
      ],
       
      
    );
    
  }
 // ignore: slash_for_doc_comments
  @override
  bool shouldRebuild(_SliverAppbarDelegate oldDelegate) {
    return 
    
    maxHeight != oldDelegate.maxHeight ||
        minHeight != oldDelegate.minHeight ||
        child != oldDelegate.child ;
      //  collapsedchild != oldDelegate.collapsedchild;
        
  }
    


  double appear(double shrinkOffset) => shrinkOffset / maxHeight;
  double disappear(double shrinkOffset) => 1 - shrinkOffset / maxHeight;
  
  Widget buildAppbar(double shrinkOffset) =>
      Opacity(opacity: appear(shrinkOffset), child: CalendarCarousel(weekFormat: true,));
}

0 ответов

Другие вопросы по тегам