我正在尝试使用UITouch将按钮从一个位置拖动到另一个位置.但是我无法拖动它.我在添加按钮目标时遇到问题…
我的代码 –
override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view,typically from a nib. let btn_swap = UIButton.buttonWithType(UIButtonType.Custom) as UIButton! btn_swap .setTitle("Drag Me",forState: UIControlState.normal) btn_swap.backgroundColor = UIColor.yellowColor() btn_swap.addTarget(self,action: "wasDragged:",forControlEvents: UIControlEvents.TouchDragInside) btn_swap.frame = CGRectMake((self.view.bounds.size.width - 100)/2.0,(self.view.bounds.size.height - 50)/2.0,100,50) self.view.addSubview(btn_swap) self.creation_of_btn() } func wasDragged (buttn : UIButton,event :UIEvent) { var touch : UITouch = event.touchesForView(buttn) . anyObject() as UITouch var prevIoUsLocation : CGPoint = touch .prevIoUsLocationInView(buttn) var location : CGPoint = touch .locationInView(buttn) var delta_x :CGFloat = location.x - prevIoUsLocation.x var delta_y :CGFloat = location.y - prevIoUsLocation.y buttn.center = CGPointMake(buttn.center.x + delta_x,buttn.center.y + delta_y); }
你给按钮选择了一个错误的选择器.Dragged:.因为你的动作方法看起来像
func wasDragged (buttn : UIButton,event :UIEvent) { }
slector应该是wasDragged:event:.
btn_swap.addTarget(self,action: "wasDragged:event:",forControlEvents: UIControlEvents.TouchDragInside)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。