ios - 在 deleteItems 后停止 UICollectionView 更新布局

标签 ios swift layout uicollectionview cell

我有一个水平布局的 collectionView,其中所选单元格应位于屏幕中央。

我的问题是,
如果位于居中单元格左侧的单元格被删除,则 collectionView 会更新布局并根据需要将剩余单元格设置为动画,以便我当前选择的单元格(应保持居中)将一个索引向左移动.
我怎样才能避免这种情况?

最佳答案

您可以保存单元格的位置:

var offsets = [IndexPath:CGFloat]()

public func getScrollPosition() -> CGFloat {
        return collectionView.contentOffset.x
    }

检查单元格是否删除并在删除单元格后设置。

collectionView.setScrollPosition(x: offsets[indexPath] ?? 0)

关于ios - 在 deleteItems 后停止 UICollectionView 更新布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57789166/

相关文章:

javascript - UIWebView、缩放和 elementFromPoint

ios - 如何正确设置水平 ImageView 的自动布局约束?

ios - 如何在 xcode6 中导入崩溃报告?

ios - 来自 AVCaptureVideoPreviewLayer 的实时缩放

ios - swift 3 : -[_SwiftValue mergeType]: unrecognized selector sent to instance

ios - 我可以通过其图层为 UIScrollView contentOffset 属性设置动画吗?

ios - 如何在 didReceiveRemoteNotification 中获取 userInfo JSON 值

html - CSS 内联 block 定位问题

Android - 带有单独 XML 的自定义 GridView

css - 如何创建一个 GWT 布局,它具有固定的页眉和页脚,允许滚动 Pane 中心自动调整大小?