在拖放过程中获取 titleLabel

Get titleLabel during drag and drop

以编程方式生成一组 UIButton。是否有可能获得触发拖动的 UIButton 的 titleLabel?或者有什么方法可以在拖动功能中获取 UIButton 的信息?

override func viewDidLoad() {
    super.viewDidLoad()
    for q in question{
       addButton(title:q)
    }
}

func addButton(title:String){
        var tbutton: UIButton = {

            let button = UIButton(frame: CGRect(x: 0, y: 0,
                                                width: buttonWidth,
                                                height: buttonHeight))
            button.center = self.view.center
            button.layer.cornerRadius = 5
            button.layer.masksToBounds = true
            button.backgroundColor = UIColor.yellow
            button.setTitleColor(.black, for: .normal)
            button.setTitle(title, for: .normal)             


            return button
        }()
        view.addSubview(tbutton)
        tbutton.addTarget(self,
                          action: #selector(drag(control:event:)),
                          for: UIControl.Event.touchDragInside)
        tbutton.addTarget(self,
                          action: #selector(drag(control:event:)),
                          for: [UIControl.Event.touchDragExit,
                                UIControl.Event.touchDragOutside]) 
        self.buttonArray.append(tbutton)

    }



    @objc func drag(control: UIControl, event: UIEvent) {
        //print(event)
        if let center = event.allTouches?.first?.location(in: self.view) {
            control.center = center
        }

        /////////////////////////////////////////  
        // Get titleLabel of the button here???????????
        /////////////////////////////////////////
    }
class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        let button = UIButton.init(frame: CGRect.init(x: 0, y: 0, width: 100, height: 100))
        button.backgroundColor = .yellow
        button.center = CGPoint.init(x: view.bounds.width / 2, y: view.bounds.height / 2)
        view.addSubview(button)

        let pangesture = UIPanGestureRecognizer.init(target: self, action: #selector(ViewController.panning(_:)))
        button.addGestureRecognizer(pangesture)

    }

    @objc func panning(_ panGesture : UIPanGestureRecognizer){
        let button = panGesture.view as! UIButton
        switch panGesture.state{
        case .changed:
            button.center = panGesture.location(in: view)
            panGesture.setTranslation(.zero, in: view)
        default:
            break
        }

        // here you can get the button's properties too.
    }
}