'Set<NSObject>' does not have a member named 'anyObject." - Xcode 6.3 'Set<NSObject>' does not have a member named 'anyObject." - Xcode 6.3 swift swift

'Set<NSObject>' does not have a member named 'anyObject." - Xcode 6.3


let touch =  touches.first as? UITouch

.first can allow you to access first object of UITouch.

Since Xcode 6.3 uses an updated version of Swift (1.2) you need to convert your old code into Swift 1.2 (Edit -> convert -> To lastest Swift).

Swift 1.2, uses Set’s (new in Swift) instead of using NSSet’s (old one in Objective-C). Thus the touchbegan function also changes its parameters from NSSet to Set.

For more info, refer this


This would check for multiple touches in symbolsLayer

override func touchesBegan(touches: Set<NSObject>, withEvent event: UIEvent){    // First, see if the game is in a paused state    if !gamePaused    {        // Declare the touched symbol and its location on the screen        for touch: AnyObject in touches {            let location = (touch as! UITouch).locationInNode(symbolsLayer)        }    }}