Home > Back-end >  Perform action on button click
Perform action on button click

Time:05-25

As long as you are tapping on the button, the action should be performed. As soon as you release the button, the action that is performed will be removed.

I am using a long-press Gesture but it didn't work.

let longGesture = UILongPressGestureRecognizer(target: self, action: #selector(long)) 
@objc func long() {
    topImageView.image = originalImage
    topImageView.isHidden = false
    lassoimageView.isHidden = true
    middleImageView.isHidden = true
    overlayImage.isHidden = true
    buttonTap = "Eye"
}

CodePudding user response:

You need to handle the state

@objc func long(_ tap:UILongPressGestureRecognizer) {
    switch(tap.state) {
       case .began:
           // to do
       case .ended:
           // to do
       default: break
    }
}

CodePudding user response:

Use .touchDown to perform action on button click

// This will start your button action.

button.addTarget(self, action: #selector(start), for: .touchDown)

// This will end your button action.

button.addTarget(self, action: #selector(end), for: .touchUpInside)

  • Related