session-ios/SignalMessaging/Views/TappableView.swift

34 lines
870 B
Swift
Raw Normal View History

//
// Copyright (c) 2018 Open Whisper Systems. All rights reserved.
//
import Foundation
public class TappableView: UIView {
let actionBlock : (() -> Void)
// MARK: - Initializers
@available(*, unavailable, message: "use other constructor instead.")
public required init?(coder aDecoder: NSCoder) {
fatalError("Unimplemented")
}
public required init(actionBlock : @escaping () -> Void) {
self.actionBlock = actionBlock
super.init(frame: CGRect.zero)
self.isUserInteractionEnabled = true
self.addGestureRecognizer(UITapGestureRecognizer(target: self, action: #selector(wasTapped)))
}
2018-05-25 18:54:25 +02:00
@objc func wasTapped(sender: UIGestureRecognizer) {
Logger.info("\(logTag) \(#function)")
guard sender.state == .recognized else {
return
}
actionBlock()
}
}