【问题标题】:Using a Storyboard for many apps为许多应用程序使用 Storyboard
【发布时间】:2017-03-30 13:29:20
【问题描述】:

我有两个应用程序具有相同的设置。这意味着在每个应用程序中都有一个分享按钮和一个评分按钮,具有相同的功能。

我所做的是复制粘贴代码以创建相同的功能(用于评分和分享按钮)。事实上,它们具有相似的设计,并且都在同一个视图控制器中。

所以,我想开发一个项目,其中将放置这两个按钮(具有相同的设计和功能),当我开发一个新的应用程序来调用它时,而不是复制和粘贴代码。

在我进行的搜索中,我发现 Storyboard Reference 可以是一个解决方案(不确定)。我还看到了 iOS 框架。

我想听听你的意见。

谢谢

【问题讨论】:

  • 在同一个项目中创建一个新目标怎么样?
  • 到目前为止,我已经为不同的数据库使用了不同的目标,我无法想象这有什么帮助,你能解释一下吗? :)

标签: ios objective-c swift storyboard modularity


【解决方案1】:

只需将您想要重用的代码打包为静态库(加上资源包)或框架或 cocoapods 项目,然后您可以将其重用于多个项目,而无需复制粘贴源代码

【讨论】:

  • 你的意思是在一个库中创建包含通用功能的视图控制器并在任何应用程序中调用它?
  • 根据您的要求,如果是我,我只会创建具有共享和评分功能的库,因为视图可能设计不同,如果看起来完全一样,那么您也可以这样做
  • 就是这样,相同的功能和完全相同的外观。我想这就是答案
  • cocoapods 或动态框架都很容易实现,然后可以从那里以编程方式调用您的故事板
  • 不会有问题,我也在swift demo中创建obj-c lib
【解决方案2】:

如果您有 2 个或更多应用共享某些设置,那么 创建新目标 将适合您。

转到项目>目标>选择原始目标“MyApp Target”>右键单击>复制。

复制目标时,默认生成“MyApp 目标副本”.app、.plist 等。我们想要更改它。

将新目标(选择并按 Enter 进行编辑)重命名为“MySecondApp Target”。

在 Build Settings 下,搜索“MyApp Target copy”。您需要将 Product Name 重命名为“MySecondApp”,并将 Info.plist 重命名为“MySecondApp Target-info.plist”。

更多详情:Create-multiple-targets

【讨论】:

    【解决方案3】:

    如果您使用 git,另一种可能的解决方案是将其设置为 git 子模块,然后将其拉入您的所有项目;与带有静态库的选项相比,它不会强制您在每次更改后重新编译代码

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-14
      • 1970-01-01
      相关资源
      最近更新 更多