在Swift中使用PDFKit制作电子书阅读器

使用初始化注入创建PDFViewController

一旦将URL属性注入到PDFViewController中,它将是不可变的。 这就是为什么我选择初始化注入而不是属性注入方法注入的原因

注入的唯一属性是pdfUrl ,其他属性( documentoutline可以在init()期间设置,它们可以在本地类范围中访问。

pdfView显示的内容document属性确定。 由于它永远不会改变,因此我还将通过init()对其进行分配。

ThumbnailView浏览页面

ThumbnailView是PDFKit中的一项非常出色的功能。 唯一需要做的就是将pdfView分配给它的pdfView属性。 然后就完成了! 没有代表,没有通知,没有更多设置!🎉

概述以浏览各章

要转到某个页面,我们需要告诉pdfView转到某个PDFPage 。 因此,我们需要深入研究documentoutline的层次结构以获得所需的page

由于我将UITableViewController用作popOver ,因此需要:

  1. 创建一个协议,以使PDFViewController符合它。
  2. 添加一些委托方法以访问pdfView中的PDFViewController
  3. 当用户选择某个单元格时,调用委托方法。