protected StickyHeaderView(Context context, View header, View view, int minHeightHeader, HeaderAnimator headerAnimator)
        {
            this.context         = context;
            this.header          = header;
            this.view            = view;
            this.minHeightHeader = minHeightHeader;
            this.headerAnimator  = headerAnimator;

            MeasureHeaderHeight();

            headerAnimator.SetupAnimator(header, minHeightHeader, heightHeader, maxHeaderTransaction);
        }
        protected virtual void SetHeightHeader(int value)
        {
            heightHeader = value;

            ViewGroup.LayoutParams lpHeader = header.LayoutParameters;
            lpHeader.Height         = heightHeader;
            header.LayoutParameters = lpHeader;

            maxHeaderTransaction = minHeightHeader - heightHeader;

            // update heights
            headerAnimator.SetupAnimator(header, minHeightHeader, heightHeader, maxHeaderTransaction);
        }
示例#3
0
        protected StickyHeaderView(Context context, View header, View view, int minHeightHeader, HeaderAnimator headerAnimator, bool preventTouchBehindHeader)
        {
            this.context                  = context;
            this.header                   = header;
            this.view                     = view;
            this.minHeightHeader          = minHeightHeader;
            this.headerAnimator           = headerAnimator;
            this.preventTouchBehindHeader = preventTouchBehindHeader;

            MeasureHeaderHeight();

            headerAnimator.SetupAnimator(header, minHeightHeader, heightHeader, maxHeaderTransaction);

            if (preventTouchBehindHeader)
            {
                header.Touch     += OnHeaderTouch;
                header.LongClick += OnHeaderLongClick;
            }
        }