【问题标题】:How to create Custom Action In FileProviderUI如何在 FileProviderUI 中创建自定义操作
【发布时间】:2017-11-03 06:25:18
【问题描述】:

根据WWDC Session 2017 在最后 10 分钟的视频中,演示者提到了自定义操作。 在这种情况下,操作的范围是您的扩展程序中的文件,而界面由 UI 扩展程序提供。

我尝试实现相同的功能,但没有成功,这是一项新功能,找不到与此功能相关的任何数据。

有人试过这个功能吗?是否有相同的示例代码/应用程序?

【问题讨论】:

  • 嗨,我也对这个功能感兴趣,并为它构建示例项目。但是我没有遇到任何困难,似乎 NSFileProviderEnumerator、NSFileProviderExtension、FileProviderItem 的文档非常好。此外,“文件提供程序扩展”和“文件提供程序 UI 扩展”XCode 模板在函数中有很好的 cmets,需要实现。也许您有更具体的问题,您需要实施什么或试图解决什么样的问题?或者您只需要在文件的上下文菜单中定义自定义操作的示例项目?
  • @AlexanderTkachenko 如果您可以共享带有自定义操作的示例项目,那就太好了。
  • 请检查我的示例项目,如果它对你有用,我会在答案中添加更多解释github.com/tkach/FileProviderSample
  • @Jaiswal 查看我的答案

标签: objective-c iphone swift ios11


【解决方案1】:

根据 Apple 文档

在文件提供程序 UI 扩展的 Info.plist 中定义自定义操作 文件。当用户长时,这些操作会出现在上下文菜单中 在浏览您的文件提供者的内容时按下一个项目。

您需要在 File Provider UI 扩展的 Info.plist 文件中添加此值

<key>NSExtensionFileProviderActions</key>
<array>
    <dict>
        <key>NSExtensionFileProviderActionIdentifier</key>
        <string>com.example.MyFileProvider.setRating</string>
        <key>NSExtensionFileProviderActionName</key>
        <string>Rate</string>
    </dict>
</array>

欲了解更多详情,请查看此链接 https://developer.apple.com/documentation/fileproviderui/adding_actions

【讨论】:

  • 嘿,除了在枚举器中抛出错误之外,您知道一种呈现 FPUIActionExtensionViewController 的方法吗?我有一个文件类型可能不受支持的用例,当用户点击此类文件时,我试图返回错误。在枚举块以外的任何地方返回错误都不会触发 UI :(
  • 我们可以动态更改动作名称吗?
猜你喜欢
  • 2013-09-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多