0

所以,我正在开发一个具有如图所示结构的应用程序,其中一些部分水平滚动,正交滚动行为已发送到分页并且行为按预期工作,唯一的问题是我想那里有一个 UIPageControl:

在此处输入图像描述

我找到了几个解释如何更新 UIPageControl 的地方,如下所示:

let section = NSCollectionLayoutSection(group: group)
section.orthogonalScrollingBehavior = .groupPaging
section.visibleItemsInvalidationHandler = { (items: [NSCollectionLayoutVisibleItem], offset: CGPoint, environment: NSCollectionLayoutEnvironment) in
    let page = (items.last?.indexPath.row ?? 0)
    // Update page controller here
}

但是他们都没有解释如何放置 UIPageControl,没有附加的视图,没有 .xib 或任何东西,只是一些流程。

4

1 回答 1

0

一种方法是将页面控件(或包含页面控件的视图)注册为“补充视图”,然后将其添加NSCollectionLayoutSectionboundarySupplementaryItems. 当您使补充视图出队时,您将对其的引用存储在某处,然后您可以将其作为section.visibleItemsInvalidationHandler实现的一部分进行访问。

于 2021-11-09T07:33:02.633 回答