首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >查找器共享扩展:从NSItemProvider获取预览图像

查找器共享扩展:从NSItemProvider获取预览图像
EN

Stack Overflow用户
提问于 2017-10-02 14:07:26
回答 1查看 1K关注 0票数 0

我正在创建一个Finder共享扩展名,以便在选择文件时使用。我想显示您正在共享的文件的图像预览(例如,您在消息和Twitter共享扩展名中看到的)。

在我的共享扩展的视图控制器的loadView方法中,我正在这样做:

代码语言:javascript
运行
复制
let item = self.extensionContext!.inputItems[0] as! NSExtensionItem
if let attachments = item.attachments as? [NSItemProvider] {
    if let attachment = attachments.first {

        attachment.loadPreviewImage(options: nil, completionHandler: { (item, error) in
            if error != nil {
                //handle error...
            } else if let img = item as? NSImage {
                //put image preview in my "share sheet"...
            }
        })

    }
}

问题是,当我不断地碰到错误条件时。我得到的错误是:

错误的Domain=NSItemProviderErrorDomain代码=-1000“不能加载预览。UserInfo={NSLocalizedDescription=Cannot加载预览。}

值得注意的是,我am能够成功地调用attachment.loadItem()并处理该文件。但是我现在并不想对文件本身做任何事情,我只想要一个缩略图,它代表的是理论上这个方法应该给我的文件.

有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2017-11-28 08:00:29

我也处于同样的情况。在阅读了手册之后,我想这就是原因所在。

“加载由项目提供程序表示的项的预览图像。”

但是,并不强制项目提供程序必须提供预览。因此,错误只是说明没有项目提供程序可以提供的预览。你应该自己去做。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46527135

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档