SKUTouchPresenter 1.2.0

SKUTouchPresenter 1.2.0

测试已测试
语言语言 Obj-CObjective C
许可证 MIT
发布最后发布2014年12月

未注册 维护。




  • 作者
  • Scott Guelich

SKUTouchPresenter 允许您向观众演示您的应用,并让他们跟随您的触摸。它会在屏幕被触摸的地方显示一个点(或多个点)。您可以配置点的颜色和不透明度,也可以在设备通过 AirPlay 或适配器线镜像到第二显示时仅显示点。

包含了示例应用,您可以使用它来切换点的开关并自定义颜色/不透明度

集成

使用 Cocoapods

  1. 将 SKUTouchPresenter 添加到您的 Podfile,然后运行 pod install

手动(不使用 Cocoapods)

  1. SKUTouchPresenter.hSKUTouchPresenter.m 文件添加到您的项目中。
  2. 将系统框架 QuartzCore 添加到您的项目中。

重要:如果您已经使用了一个自定义的 UIApplication 子类,那么您应该编辑 SKUTouchPresenter.h 并将父类从 UIApplication 改为您的自定义子类的名称(这样继承链为 UIApplication -> YourApplicationSubclass -> SKUTouchPresenter)。

使用方法

在您的应用程序代理或您想开始显示触摸的地方调用 showTouchesWithColor:showTouchesWhenMirroringWithColor:

+ (void) showTouchesWithColor: (UIColor *)color

在屏幕被触摸的任何地方启用(或禁用)显示点。传递 nil 来禁用。

+ (void) showTouchesWhenMirroringWithColor: (UIColor *)color

在屏幕被触摸的任何地方启用(或禁用)显示点,但只当设备通过 AirPlay 或适配器线镜像到第二显示时。

+ (void) setTouchRadius: (CGFloat)radius

设置点的半径(以像素为单位)。默认为 20 像素。

SKUTouchPresenter 类与或没有 ARC 都可以工作。

实现细节

当启用时,该类通过 UIApplication sendEvents: 拦截触摸事件,在任何触摸发生的地方显示一个点。事件会传递下去,所以这不应该影响您的应用的行为。

为了通过 UIApplication sendEvents: 拦截事件,您通常会子类化 UIAppliation。默认情况下,代码使用 动态子类化 在您第一次调用 showTouchesWithColor:showTouchesWhenMirroringWithColor: 时自动完成,这使您能够使用 #define 块包装这些调用,并且只为特定的构建包含功能。

SKUTouchPresenter 不会使用任何私有 API,并且应该可以用于 App Store 审批。但是,您可以手动设置而无需动态子类化:您只需将 SKUTouchPresenter 添加为 UIApplication 的自定义子类。以下是如何做到这一点的步骤

  1. 遵循上面的集成步骤。
  2. 编辑main.m,使@"SKUTouchPresenter"成为UIApplicationMain的第三个参数。
  3. 如果您的应用程序已经使用了UIApplication的子类,请参阅使用部分关于子类的注意事项。
  4. 如果您想删除动态子类化代码以确保更尽善尽美,请打开SKUTouchPresenter.m并删除含有“Can delete if subclassing...”的两段代码。

许可协议

版权所有 2011-2014 Scott Guelich。可按照MIT许可协议进行分发。