touches.anyObject()不再有效

时间:2015-07-31 12:33:37

标签: swift sprite-kit

我有一个错误,我不知道如何处理。在

override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {

        //Some code here

        let touch = touches.anyObject() as! UITouch
        let touchLocation = touch.locationInNode(self)
        sceneTouched(touchLocation)

}

我收到错误&#34; Set&#34;没有名为&#39; anyObject&#39;&#34;的成员。我一直在互联网上搜索,一无所获。我知道这与Swift最近的一些变化有关,但我不知道如何接受它。任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:3)

试试这个

 override func touchesBegan(touches: Set<NSObject>, withEvent event: UIEvent) {
    var touch : UITouch!
    touch = touches.first as? UITouch
    let touchLocation = touch.locationInNode(self)
    sceneTouched(touchLocation)
 }

答案 1 :(得分:1)

请注意,Swift Set类型没有anyObject方法。您可以将其强制转换为NSSet,然后使用anyObject方法或只是先使用?它适用于Swift中的所有CollectionType。

let touch = touches.first as! UITouch