gpt4 book ai didi

ios - 基于 UICollectionViewFlowLayout 的 CoverFlow 布局

转载 作者:行者123 更新时间:2023-11-28 22:12:58 30 4
gpt4 key购买 nike

我通过子类化 UICollectionViewFlowLayout 创建了一个封面流布局。

有一个动画根据方法将一个项目推到屏幕中心:

-(CGPoint)targetContentOffsetForProposedContentOffset:(CGPoint)proposedContentOffset withScrollingVelocity:(CGPoint)velocity

我需要找到一种方法来了解这是哪个项目,以便用相关数据项目做点什么。

我怎样才能做到这一点?似乎找不到办法。

最佳答案

UICollectionView 上没有方法可以给你这个,所以这就是我所做的(iPad,修复了肖像模式, Collection View subview 小于屏幕,所以你可能想要更聪明地使用 CGPoint);

// Get path for cell in centre
UIWindow *mainWindow = [[UIApplication sharedApplication] keyWindow];
CGPoint pointInScreenCoords = CGPointMake(384, 512);
CGPoint pointInWindowCoords = [mainWindow convertPoint:pointInScreenCoords fromWindow:nil];
CGPoint pointInViewCoords = [self.collectionView convertPoint:pointInWindowCoords fromView:mainWindow];

NSIndexPath* centreIndexPath = [self.collectionView indexPathForItemAtPoint:pointInViewCoords];

根据您需要更新的频率,您可以将它放在 ScrollView 委托(delegate)的 didScroll 方法、didEndScrolling 中,或者只在需要时调用。

关于ios - 基于 UICollectionViewFlowLayout 的 CoverFlow 布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22441412/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com