拖放期间获取titleLabel

时间:2018-12-03 01:54:35

标签: ios swift uibutton uikit drag

以编程方式生成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???????????
        /////////////////////////////////////////
    }

1 个答案:

答案 0 :(得分:0)

c.Value >= reference-5 And c.Value <= reference+5 Then