使用RxSwift制作游乐场

注意:已在2017年3月10日更新为使用Xcode 8.2.1和CocoaPods 1.2.0。

情况 :您正在项目中使用RxSwift。 您意识到拥有一个操场来测试想法真的很好。

问题 :您无法将RxSwift(或RxCocoa)导入您的游乐场。 苹果公司的指示是不透明的。

解决方案 :使用CocoaPods安装RxSwift。 CocoaPods将创建一个包含RxSwift和您现有项目的工作区。 在项目内创建的工作区将能够导入RxSwift。

详细说明 :如果您尚未使用CocoaPods,请初始化一个新的Podfile

  $ pod init 

现在,您的项目目录中应该有一个Podfile 。 在您的Podfile添加以下段:

  #项目豆荚 
pod'RxSwift','〜> 3.2'

然后安装此pod:

  $ pod安装 

现在您应该有一个工作区(扩展名为.xcworkspace )。 使用Xcode打开此文件。

现在,您可以创建您的游乐场了。

转到项目导航器,然后取消选择所有内容(⌘单击任何选定的项目)。 这很重要,因为在下一步中添加项目时,您希望它位于工作空间而不是现有项目下。

使用项目导航器中的“ +”按钮将新的Playground添加到工作区。

给您的游乐场起个名字。 我建议将其与Project.xcodeproj和Project.xcworkspace文件放在同一目录中。 保持在一起。

此时,您应该有一个工作区,其中项目,操场和吊舱都在工作区的顶层:

现在构建您的项目。 这还将建立您在上一步中选择的Rx目标。

您的构建应该成功!

现在转到您的游乐场并导入RxSwift。

使用RxSwift游乐场

您可能会注意到RxSwift在操场上的行为有所不同。 具体来说,如果您创建一个Observable.interval,它似乎没有任何作用。 那是因为您需要告诉Xcode继续连续运行您的Playground,否则它仅运行每个语句并立即停止执行,然后观察到的时间间隔可以发送事件。

可以通过在Playground / Sources下添加此SupportCode.swift文件来解决。

在操场的尽头,将调用添加到playgroundTimeLimit以指定您想让操场运行多长时间。 例如:

  PlaygroundTimeLimit(10) 

这将使运动场保持运行10秒钟,此后运动场将自动停止,从而节省了笔记本电脑的电池并限制了输出缓冲区的大小。