使用 UI 交付 Cocoapods Pod

Deliver a Cocoapods Pod with UI

我想知道使用 UI 交付 Cocoapods Pod 的最佳方式。 我需要我的 Pod 的用户能够初始化某个入口点视图控制器的实例,然后将其呈现在他们的应用程序中(例如 presentViewController:animated:completion)。

我看到三个选项:

  1. 为每个 UI 捆绑 .xib 个文件(这也会让我在内部使用 .xib 个文件而不是故事板)。这样用户就可以初始化第一个视图控制器,然后由我来控制。
  2. 捆绑整个故事板,但您希望用户如何将其集成到他们的应用程序中?
  3. 在我的 Pod 中以编程方式构建我的 UI(就像我看到 Braintree 在他们的 SDK 中所做的那样)。

有什么想法吗?

这些选项中的任何一个都可以正常工作。如果您选择使用 xibs 或故事板,您必须记住将这些文件包含在您的 podspec 中,如下所示:

  s.resources    = "Project/**/*.{png,jpeg,jpg,gif,storyboard,xib,lproj,xcdatamodeld,plist,xcassets}"

还需要注意的一件事是访问您的广告连播包。它不再是 NSBundle.mainBundle(),因为您的 pod 无权访问主项目的包。相反,您需要像这样 let podBundle = NSBundle(forClass: self)

访问您正在使用的 class 的包