public override UICollectionViewLayoutAttributes LayoutAttributesForDecorationView(NSString kind, NSIndexPath indexPath)
        {
            var layoutAttributes = UICollectionViewLayoutAttributes.CreateForDecorationView <FastListViewLayoutAttributes>(kind, indexPath);

            layoutAttributes.Color = _fastListView.SeparatorColor.ToUIColor();
            return(layoutAttributes);
        }
        /// <summary>
        /// Layouts the attributes for elements in rect.
        /// </summary>
        /// <returns>The attributes for elements in rect.</returns>
        /// <param name="rect">Rect.</param>
        public override UICollectionViewLayoutAttributes[] LayoutAttributesForElementsInRect(CGRect rect)
        {
            var attributes = new UICollectionViewLayoutAttributes[_cellCount + 1];

            CalculateAllAttributes(attributes);

            if (_requiresHeightCalculation)
            {
                CalculateHeightForItems();

                CalculateAllAttributes(attributes);
            }

            // we must set the content size to the total height of all cells recorded in _currentY
            var width = _collectionViewSize.Width;

            _collectionViewSize = new CGSize(width, _currentHeight);

            var decorationAttribs = UICollectionViewLayoutAttributes.CreateForDecorationView(myDecorationViewId, NSIndexPath.FromItemSection(0, 0));

            decorationAttribs.Size   = new CGSize(CollectionView.Frame.Width, CollectionView.Frame.Height);
            decorationAttribs.ZIndex = -1;
            attributes[_cellCount]   = decorationAttribs;

            return(attributes);
        }
        // TODO: Step 5c: add layout attributes for decoration view
        public override UICollectionViewLayoutAttributes LayoutAttributesForDecorationView(NSString kind, NSIndexPath indexPath)
        {
            var decorationAttribs = UICollectionViewLayoutAttributes.CreateForDecorationView(kind, indexPath);

            decorationAttribs.Size   = CollectionView.Frame.Size;
            decorationAttribs.Center = CollectionView.Center;
            decorationAttribs.ZIndex = -1;

            return(decorationAttribs);
        }
Exemplo n.º 4
0
        public override UICollectionViewLayoutAttributes[] LayoutAttributesForElementsInRect(RectangleF rect)
        {
            var attributes = new UICollectionViewLayoutAttributes [cellCount + 1];

            for (int i = 0; i < cellCount; i++)
            {
                NSIndexPath indexPath = NSIndexPath.FromItemSection(i, 0);
                attributes [i] = LayoutAttributesForItem(indexPath);
            }

            var decorationAttribs = UICollectionViewLayoutAttributes.CreateForDecorationView(myDecorationViewId, NSIndexPath.FromItemSection(0, 0));

            decorationAttribs.Size   = CollectionView.Frame.Size;
            decorationAttribs.Center = CollectionView.Center;
            decorationAttribs.ZIndex = -1;
            attributes [cellCount]   = decorationAttribs;

            return(attributes);
        }