gpt4 book ai didi

swift - 使用未解析的标识符 'PHPhotoLibrary'

转载 作者:可可西里 更新时间:2023-11-01 02:16:55 31 4
gpt4 key购买 nike

我正在为 Mac OS X (10.11) 开发照片扩展。

我导入了 Photos 和 PhotosUI 框架。

除了我尝试调用 PHPhotoLibrary.sharedPhotoLibrary() 之外,一切正常。

这会导致 Xcode 7.3.1 (7D1014) 出现错误:

Use of unresolved identifier 'PHPhotoLibrary'

有没有其他人遇到过这种情况或知道可能导致该问题的原因?

最佳答案

您不需要PHPhotoLibrary 类来在 iOS 或 OS X 中创建照片编辑扩展,而在 OS X 中您不能 使用它。

照片编辑扩展程序的整个工作流程都经过 PHContentEditingController协议(protocol)。在这两个平台上,照片编辑扩展的主视图 Controller 都实现了这个协议(protocol)。它提供了要在 startContentEditingWithInput:placeholderImage: 中编辑的 Assets 。方法,当用户完成编辑时,它会调用您的 finishContentEditingWithCompletionHandler:方法,以便您可以应用最终质量的编辑并提供输出。

注意我说的是“当用户完成编辑时”。保存到照片库不是您在扩展代码中执行的操作——相反,Photos 会要求您提供最终渲染输出,而 Photos 会处理将其保存到库中。

在你的finishContentEditingWithCompletionHandler:方法,你应该:

  1. PHContentEditingInput(您在 startContentEditingWithInput:placeholderImage: 中收到)创建一个 PHContentEditingOutput
  2. 将输出作为 JPEG 文件(或 QuickTime 电影文件,用于视频 Assets )保存到 PHContentEditingOutput 指定的 renderedContentURL
  3. 调用传递给您的 completionHandler block ,将它传递给您的 PHContentEditingOutput

您调用完成处理程序是触发照片将编辑后的 Assets 保存到库中的原因。

关于swift - 使用未解析的标识符 'PHPhotoLibrary',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37231364/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com