ios - UICollectionView setLayout :animated: not preserving zIndex

标签 ios uicollectionview z-index

我注意到当在 UICollectionView 中调用 setLayout:animated 以在两个布局之间切换时,当前可见的单元格不符合 zIndex 它的布局属性已在 layoutAttributesForItemAtIndexPath: 中设置。

例如,如果我有一个带有 UICollectionViewFlowLayoutUICollectionView,请将它的 minimumLineSpacing 设置为负数,以便单元格重叠,然后将每个单元格的 zIndex 设置为高于前一个单元格的 zIndex ,然后看起来好像单元格是从下往上堆叠的。

但是,如果我将布局设置为另一个布局然后返回到原始布局,这会中断。就好像当前可见的单元格没有监听 zIndex 而是被放置在其他单元格之上。如果我将单元格滚动到屏幕外,然后再回到屏幕上,它就在正确的位置。

最佳答案

我遇到了同样的问题。切换布局将忽略单元格的 zIndex。

我已经设法通过像这样在 z 轴上应用平移来使其“看起来正确”:

attributes.transform3D = CATransform3DMakeTranslation(0, 0, indexPath.row);

但这只是一个视觉修复,如果您尝试单击该项目,您会发现 zIndex 仍然是错误的,直到通过将其滚动到屏幕外来回收它。

关于ios - UICollectionView setLayout :animated: not preserving zIndex,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12659301/

相关文章:

ios - Facebook Audience Network 丢失文件 'fb_an_config.plist'

ios - 自定义 Segue 没有动画

ios - Swift:如何重写 scrollView 的方法?

ios - Collectionview.reloaddata() 之后无法选择 UICollectionViewcell

ios - 某些 GADUnifiedNativeAdView 不可点击 (AdMob/Swift)

objective-c - 对象在 iOS5 上被释放,但在 iOS4 上没有。如何追踪?

ios - 无法在 uicollectionview 中显示 uimage 集

html - h1 文本出现在侧滑导航栏上方

jquery - 更改 JQuery 对话框或 Google map Z 索引

html - ng-grid 的列菜单的 z-index 问题