【问题标题】:Not getting file URL from bundle没有从包中获取文件 URL
【发布时间】:2017-08-18 06:11:18
【问题描述】:

我正在 PDFView 中加载 PDF 文件,但无法从 Bundle 中获取 PDF 文件 URL。

请检查以下代码:

let pdfView = PDFView(frame: self.view.bounds)
let myFileName = "sample"
guard let url = Bundle.main.url(forResource: myFileName, withExtension: "pdf") else {
         return
}
pdfView.document = PDFDocument(url: url)

self.view.addSubview(pdfView)

每次我在url 中收到nil

编辑:

这是我的项目窗口:

我犯了什么愚蠢的错误吗?

请指导我。

提前致谢。

【问题讨论】:

  • 您可以编辑您的问题以显示您的项目窗口吗?我想看看您是否/如何将您的 sample.pdf 包含到您的应用程序包中。
  • 我已经添加了我的项目窗口,请检查我更新的问题。

标签: swift3 ios11


【解决方案1】:

当您在项目中添加任何外部文件并选择捆绑目标时,我不确定它是否在最新的 XCode 但在 XCode 9.5(Beta) 中,但它仍然没有添加到捆绑中。

解决方案:

您需要单击要添加到目标包中的文件并从属性窗口手动检查。

请查看以下屏幕截图的更多细节:

在将文件添加到项目中时,我已经检查了它,但它仍然没有添加到选定的目标中。

现在我只需要检查相关目标及其是否按预期工作。

不确定它是最新 XCode 中的错误或新更新。

但是我的问题解决了。

谢谢。

【讨论】:

    【解决方案2】:

    不,你没有犯愚蠢的错误。

    我相信您只需将您的 pdf 文件添加为要复制的资源。

    进入项目的构建阶段并单击“复制捆绑资源”,然后将“sample.pdf”添加到要复制的文件列表中,如下所示:

    然后确保它出现在该列表中,如下所示:

    【讨论】:

    • 谢谢@Michael 我已经解决了我的问题,但是采用了不同的方法,是的,您的解决方案也可以很好地解决我的问题。
    • 对。将 pdf 文件添加为“目标成员”基本上与我在上面所做的相同。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多