IceCubesApp/Packages/Env/Sources/Env/HapticManager.swift

31 lines
799 B
Swift
Raw Normal View History

2023-02-02 15:56:42 +00:00
import UIKit
public class HapticManager {
public static let shared: HapticManager = .init()
private let selectionGenerator = UISelectionFeedbackGenerator()
private let impactGenerator = UIImpactFeedbackGenerator(style: .heavy)
private let notificationGenerator = UINotificationFeedbackGenerator()
private init() {
selectionGenerator.prepare()
impactGenerator.prepare()
}
public func selectionChanged(){
selectionGenerator.selectionChanged()
}
public func impact() {
impactGenerator.impactOccurred()
}
public func impact(intensity: CGFloat) {
impactGenerator.impactOccurred(intensity: intensity)
}
public func notification(type: UINotificationFeedbackGenerator.FeedbackType){
notificationGenerator.notificationOccurred(type)
}
}