Распознаватель жестов с представлениями коллекции

У меня есть UICollectionView с кнопкой в ​​качестве дополнительного UICollectionReusableView, Когда кнопка нажата, я добавляю экземпляр подкласса UILabel как подпредставление к представлению коллекции. экземпляр ярлыка имеет UIPanGestureRecognizer и UIPinchGestureRecognizer, Распознаватели жестов метки не вызываются из-за представления коллекции. мой UILabel подкласс выглядит следующим образом:

import UIKit

public class SJLabel: UILabel {

    // The pinch associated with the label
    private var pinch: UIPinchGestureRecognizer!
    private(set) public var pan: UIPanGestureRecognizer!

    override init(frame: CGRect) {
        super.init(frame: frame)
        initialSetUp()
    }

    required init(coder aDecoder: NSCoder) {
        super.init(coder: aDecoder)
        initialSetUp()
    }

    private func initialSetUp() {
        numberOfLines = 0

        pinch = UIPinchGestureRecognizer(target: self, action: "handlePin:")
        addGestureRecognizer(pinch)

        pan = UIPanGestureRecognizer(target: self, action: "handlePan:")
        addGestureRecognizer(pan)
    }
}

extension SJLabel {

    @objc private func handlePan(recognizer: UIPanGestureRecognizer) {

        let location = recognizer.locationInView(superview)
        print(location)
    }

    @objc private func handlePin(recognizer: UIPinchGestureRecognizer) {
        if recognizer.numberOfTouches() != 2 {
            return
        }

        println("Handling")
    }
}

0 ответов

Другие вопросы по тегам