在 iOS 11 中,PDFKit 已在 iOS 中可用。它可以使用 UIPageViewController 但不能设置过渡样式 ( documentation )。
有什么方法可以将 PDFView 的 PageViewController 的过渡样式从默认更改为页面 curl ?
最佳答案
我已经浏览了 PDFView 的 View 层次结构,看起来它下面正在使用 UIPageViewController。但是,无法将过渡样式设置为 curl,因为该属性只能在初始化期间设置。
我尝试过的一种解决方法是创建您自己的 UIPageViewController 并在数据源上设置其 View Controller 以查看 Controller ,每个 View Controller 都包含一个 PDFView,其页面设置为相应的索引,但在加载包含大量页面的 PDF 时效率低下。
p>let pageCount = self.pdfDocument!.pageCount - 1
for index in 0...pageCount {
let page: PDFPage = self.pdfDocument!.page(at: index)!
let pdfView: PDFView = PDFView(frame: self.view.frame)
pdfView.document = self.pdfDocument
pdfView.displayMode = .singlePage
pdfView.go(to: page)
pdfView.autoScales = true
let vc = UIViewController()
vc.view = aView
pages.append(vc)
}
同样,这是一种解决方法,也许有更好的方法。
关于iOS 11 PDFKit - curl 过渡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47812559/