Giter Club home page Giter Club logo

Comments (3)

jakestephens avatar jakestephens commented on July 17, 2024 1

For posterity, I fixed this by adding the following method:

- (UICollectionViewLayoutAttributes *)layoutAttributesForItemAtIndexPath:(NSIndexPath *)indexPath
{
    //attributes are copied so that the collection view doesn't gripe about us modifying existing attribute objects
    UICollectionViewLayoutAttributes *attributes = [[super layoutAttributesForItemAtIndexPath:indexPath] copy];
    
    CGRect visibleRect = (CGRect){self.collectionView.contentOffset, self.collectionView.bounds.size};
    CGFloat visibleCenterX = CGRectGetMidX(visibleRect);
    
    CGFloat distanceFromCenter = visibleCenterX - attributes.center.x;
    CGFloat absDistanceFromCenter = MIN(ABS(distanceFromCenter), kScalingOffset);
    CGFloat scale = absDistanceFromCenter * (kMinimumScaleFactor - 1) / kScalingOffset + 1;
    
    attributes.transform3D = CATransform3DScale(CATransform3DIdentity, scale, scale, 1);
    
    return attributes;
}

It performs the same operations as - (NSArray *)layoutAttributesForElementsInRect:(CGRect)rect but is able to apply attributes to cells before they enter the visible rect.

from lglinearflow.

JordanRoPo avatar JordanRoPo commented on July 17, 2024

bump i cannot find an answer to this problem, plus once the cell becomes a certain size, the spacing between teh cells grow so only one is visible at a time on screen

from lglinearflow.

BhavinBhadani avatar BhavinBhadani commented on July 17, 2024

so anyone find an answer?

from lglinearflow.

Related Issues (7)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.