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

后端 未结 2 1893
忘掉有多难
忘掉有多难 2020-12-05 14:05

I\'m checking to see if an element has been selected.

func touchesBegan(touches: Set, withEvent event: UIEvent)
{
    // First, see if the g         


        
相关标签:
2条回答
  • 2020-12-05 14:46
    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

    0 讨论(0)
  • 2020-12-05 14:49

    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)
            }
        }
    }
    
    0 讨论(0)
提交回复
热议问题