Xcode6 - Swift:如何检测触摸的对象以及移动/拖放?

时间:2014-11-19 14:30:15

标签: ios cocoa-touch swift

我试图从这些类型中删除多个: @IBOutlet weak var objectToMove1:UIImageView

并且希望能够检测到其中一个被触摸...如果按住对象并移动手指,我希望对象跟随...当被丢弃时,我想看看它是否会干扰另一个对象相同类型...

我找到了这个例子:

override func touchesMoved(touches: NSSet, withEvent event: UIEvent) {
    var touch : UITouch! = touches.anyObject() as UITouch
    location = touch.locationInView(self.view)     

    objectToMove1.center = location
}

这是有效的,但仅适用于特定对象(此处:“objectToMove1”)......它会移动到我第一次放手指的位置(无论我把手指放在哪里)......

那么,我怎么能调整这个以便能够检测我是否实际上是在接触那个物体然后跟着我的手指+检测它是否在抬起我的手指时与另一个物体发生干扰(碰撞)?

感谢名单! 谢蒂尔

2 个答案:

答案 0 :(得分:0)

使用UITouchGestureRecognizer。您可以创建一个使用委托调用来处理触摸的常规方法。然后,您可以将其添加到以编程方式创建的任何视图中,或者在viewDidLoad类型中将其添加到那里。

答案 1 :(得分:0)

固定!!!

最后指出正确的方向,并明白我们正在处理"可选的",我仍然不完全理解(目前阅读" Swift编程语言")... 无论如何,解决方案是放置"!"在" .view" ...

之后

归功于帮助我的@DemetrakoPetros :-D

ķ。