Haptico 1.2.0

Haptico 1.2.0

Sapozhnik Ivan 维护。



Haptico 1.2.0

  • 作者:
  • isapozhnik

Haptico

Haptico 是一款易于使用的 iOS 触觉反馈生成器。除了默认的触觉反馈外,它还可以播放模式!查看示例项目。

CI Status Version License Platform

目录

示例

要运行示例项目,请克隆仓库,然后从示例目录中首先运行 pod install

如何使用

首先,您需要将 Haptico 模块导入到您的类中

import Haptico

还需要注意的是,根据您所使用的设备 - 反馈可能会有所不同。从 iPhone 7 开始,所有 iPhone 均配备触觉引擎。在 iPhone 7 之前,Haptico 将使用标准振动。另外,在 iPhone 7 和 iOS 10 之前,对模式播放和冲击不支持

1. 生成预设默认反馈

使用Haptico,您可以生成三种默认类型的触觉通知

public enum HapticoNotification {
    case success
    case warning
    case error
}

下面是一个小示例,展示如何生成成功、警告和错误反馈

@IBAction func generateSuccess(_ sender: Any) {
    Haptico.shared().generate(.success)
}
@IBAction func generateWarning(_ sender: Any) {
    Haptico.shared().generate(.warning)
}
@IBAction func generateError(_ sender: Any) {
    Haptico.shared().generate(.error)
}

2. 生成冲击反馈

除了默认触觉通知之外,Haptico还可以生成冲击通知。库支持三种类型的冲击通知(在iOS10+和iPhone 7以上版本可用)

public enum HapticoImpact {
    case light
    case medium
    case heavy
}

要使用它们,请调用

Haptico.shared().generate(.medium)

简单吧?

3. 模式播放

现在有点特别的是 - 模式播放。Haptico可以播放模式,这些模式被“编码”为字符串。让我们看看一个小示例

Haptico.shared().generateFeedbackFromPattern("..oO-Oo..", delay: 0.1)

这个字符串中的每个字符代表一些特定的触觉冲击

  • "O"(大写“o”) - 重击
  • "o" - 中击
  • "." - 轻击
  • "-" - 持续时间为0.1秒的延迟

4. UI扩展

Haptico附带一些UI扩展:HapticoButton(它是UIButton的子类)和带有触觉反馈的UIAlertController扩展。

要开始使用HapticoButton,只需在Storyboard中将类名设置为HapticoButton。然后,当使用UIControlEvents.touchDown事件时,您将获得重击反馈,当使用UIControlEvents.touchUpInside和UIControlEvents.touchUpOutside时,您将获得轻击反馈。

要使用Haptico与UIAlertController一起,请按照以下简单示例操作

func showSuccessAlert() {
    let alert = UIAlertController(title: "Alert Title", message: "Alert Message", preferredStyle: .alert)
    alert.addAction(UIAlertAction(title: "Ok", style: .default, handler: nil))
    present(alert, animated: true, hapticNotification: .success)
}

安装

Haptico 可通过 CocoaPods、Carthage 和 Swift Package Manager 获得。

CocoaPods

要使用 CocoaPods 安装,请简单地将以下行添加到您的 Podfile 中

pod 'Haptico'

Carthage

要使用 Carthage 安装,请将以下行添加到您的 Cartfile 中,并按照说明将框架添加到应用程序中

github "iSapozhnik/Haptico"

Swift Package Manager

要使用 Swift Package Manager 安装,直接使用 Xcode 11 将其添加到项目中,或将其指定为 Package.swift 文件中的依赖项

// ...
dependencies: [
    .package(url: "https://github.com/iSapozhnik/Haptico.git", from: "1.1.0"),
],
//...

Mentions

作者

isapozhnik, [email protected]

捐赠

如果你喜欢这个项目,并且它帮到了你减少开发时间,你可以给我一杯☕️ 😉

Donate

许可

Haptico 在 MIT 许可协议下可用。更多信息请查看 LICENSE 文件。