I guys,
today I've updated my iPhone to iOS 9 and now have problems with a gesture recognizer. This is the error:
WARNING: A Gesture recognizer (; target= <(action=onVideoTap:, target=)>>) was setup in a storyboard/xib to be added to more than one view (->; layer = >) at a time, this was never allowed, and is now enforced. Beginning with iOS 9.0 it will be put in the first view it is loaded into.
I didn't have this problem with iOS8. The view contains a UIImageView and a TextView. The recognizer was dropped into the ImageView and has only referncing outlets to this view.
I don't really understand this issue. Can somebody help me? Thank you :)
This was happening with me because I wanted to use a Tap Gesture Recognize with an image in a TableViewCell
contained in a TableView
.
I add one Tap Gesture Recognizer but I have more than one TableViewCell
(more than one image) in my table.
iOS will assign the UITapGestureRecognizer
to the first image in the first cell, and other cells will be without gestures (the gesture already set to the first image only).
User Interaction Enabled
for the UIView
you want to assign with a TapRecognizerGesture
.in the sub-view TableViewCell
in my case add a new UITapGestureRecognizer
. The code:
internal let tapRecognizer1: UITapGestureRecognizer = UITapGestureRecognizer()`
In your main view TableView
in my case and for every cell assign the UITapGestureRecognizer
you made with each cell to a main function in the main view:
cell.tapRecognizer1.addTarget(self, action: "img_Click:")
cell.img.gestureRecognizers = []
cell.img.gestureRecognizers!.append(cell.tapRecognizer1)
Add the function you want UITapGestureRecognizer
to fire when clicked:
func img_Click(sender: UITapGestureRecognizer) {
print("ok")
}
UITapGestureRecognizer
action in the main view by assigning it in its sub-view directly.addTarget
line.I think that this problem happen when you use storyboard added a Tap Gesture Recognizer. Because some reasons you added more than one views.(see the picture).
So, delete other wrong views,leave the right one view.
Already fixed it. The storyboard is localized and in one language I assigned the the recognizer twice to the picture view. Somehow this seemed to cause troubles on the other storyboards too.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With