TextureGroup / Texture

Smooth asynchronous user interfaces for iOS apps.

Home Page:https://texturegroup.org/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Texture doesn't support custom UICollectionViewLayout.

ekazaev opened this issue · comments

Texture doesnt support custom UICollectionViewLayout as it is hardcoded to support only UICollectionViewFlowLayout.

ASCollectionViewProxy intercepts the selector collectionView:layout:sizeForItemAtIndexPath: and propagates the values directly to the UICollectionViewFlowLayout in the prepare method. If any other layout has a different method signature or a different ways of setting the item sizes, ASCollectionView stops to work.
https://developer.apple.com/documentation/uikit/uicollectionviewdelegateflowlayout/1617708-collectionview

The second issue is that _ASCollectionViewCell does not implement preferredLayoutAttributesFitting so it does not propagate the desired size in a way that is natural for the UICollectionViewLayout after it was calculated. That must be fixed to support any other custom UICollectionViewLayout.

Please see the example project. Just uncomment one or another solution in TextureController.swift
TestTexture.zip

Didn't know much about this, maybe you can take a look at ASCollectionViewLayoutInspecting?