I have to add tapGesture for labels and ImageView. How can I create a generic tap gesture method for Labels and ImageView?
//TapGestureHandler
extension EditViewController : UIGestureRecognizerDelegate
{
//Add Gesture on ImageView
func addGesture()
{
//Gesture Male
let maleTapGesture = UITapGestureRecognizer(target: self, action: #selector(maleGestureTap))
maleTapGesture.delegate = self
imgViewMale.addGestureRecognizer(maleTapGesture)
//GestureFemale
let FemaleTapGesture = UITapGestureRecognizer(target: self, action: #selector(femaleGestureTap))
FemaleTapGesture.delegate = self
imgViewFemale.addGestureRecognizer(FemaleTapGesture)
//Gesture MaleFemale
let maleFeTapGesture = UITapGestureRecognizer(target: self, action: #selector(maleFeGestureTap))
maleFeTapGesture.delegate = self
imgViewMaleFe.addGestureRecognizer(maleFeTapGesture)
}
//Tap Gesture Male
func maleGestureTap()
{
imgViewMale.backgroundColor = hexStringToUIColor(hex: "#CBFFE2")
}
//Tap Gesture Female
func femaleGestureTap()
{
imgViewFemale.backgroundColor = hexStringToUIColor(hex: "#CBFFE2")
}
//Tap Gesture MaleFemale
func maleFeGestureTap()
{
imgViewMaleFe.backgroundColor = hexStringToUIColor(hex: "#CBFFE2")
}
}
I don't know how can we write a generic method.
You could do something like that:
Suppose you have a few objects that you need to attach a tap handler to, assuming they all conform to UIView protocol: