anchor.diff:  import 'package:gsy_github_app_flutter/common/utils/common_utils.dart';
   import 'package:gsy_github_app_flutter/common/utils/navigator_utils.dart';
   import 'package:gsy_github_app_flutter/widget/gsy_card_item.dart';
  +import 'package:gsy_github_app_flutter/widget/nested/nested_refresh.dart';
   import 'package:gsy_github_app_flutter/widget/repos_item.dart';
   import 'package:redux/redux.dart';
   
  
positive.code:           children: <Widget>[
              FlatButton(
                onPressed: () {},
                child: new Image(image: new AssetImage(GSYICons.DEFAULT_USER_ICON), width: 70.0, height: 70.0),
              ),
              Container(
                child: Text(CommonUtils.getLocale(context).app_empty, style: GSYConstant.normalText),
              ),
            ],
          ),
  
negative.code:     TrendTypeModel("C#", "c%23"),
    ];
  }
  
  ///动态头部处理
  class _InfoHeaderDelegate extends SliverPersistentHeaderDelegate {
    _InfoHeaderDelegate(
        {@required this.minHeight,
        @required this.maxHeight,
        @required this.snapConfig,
        this.child,
        this.builder,
        this.changeSize = false});
  
    final double minHeight;
    final double maxHeight;
    final Widget child;
    final Builder builder;
    final bool changeSize;
    final FloatingHeaderSnapConfiguration snapConfig;
    AnimationController animationController;
  
    @override
    double get minExtent => minHeight;
  
    @override
    double get maxExtent => math.max(maxHeight, minHeight);
  
    @override
    Widget build(
        BuildContext context, double shrinkOffset, bool overlapsContent) {
      if (builder != null) {
        return builder(context, shrinkOffset, overlapsContent);
      }
      return child;
    }
  
    @override
    bool shouldRebuild(_InfoHeaderDelegate oldDelegate) {
      return true;
    }
  
    @override
    FloatingHeaderSnapConfiguration get snapConfiguration => snapConfig;
  }
  
  typedef Widget Builder(
      BuildContext context, double shrinkOffset, bool overlapsContent);
  