' heeft geen lid met de naam 'anyObject'. - Xcode 6.3'/> ' heeft geen lid met de naam 'anyObject'. - Xcode 6.3'/> ' heeft geen lid met de naam 'anyObject'. - Xcode 6.3'/> 'Set <NSObject>' heeft geen lid met de naam 'anyObject'. - Xcode 6.3 | a-shops-ranking.com

Vraag 'Set ' heeft geen lid met de naam 'anyObject'. - Xcode 6.3


Ik controleer of er een element is geselecteerd.

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
        let touch = touches.anyObject! as? UITouch
        let location = touch.locationInNode(symbolsLayer)

En dit had eerder prima gecompileerd in Xcode 6.2 maar met een 6.3 update, de regel "let touch = touches.anyObject! As? UITouch" gooit de fout:

'Set' heeft geen lid met de naam 'anyObject'

Ik heb veel vergelijkbare vragen gelezen, maar het lijkt alsof ik er niet omheen draai: "Om de waarde te gebruiken, moet je deze eerst" uitpakken "." Vooral omdat de antwoorden lijken te focussen op meldingen.

Heel erg bedankt. w


23
2018-04-11 23:50


oorsprong


antwoorden:


let touch =  touches.first as? UITouch

.first kan je toegang geven tot het eerste voorwerp van UITouch.

Omdat Xcode 6.3 een bijgewerkte versie van Swift (1.2) gebruikt, moet je je oude code omzetten in Swift 1.2 (Bewerken -> omrekenen -> Meest recent Swift).

Swift 1.2, gebruikt SetIs (nieuw in Snel) in plaats van gebruiken NSSet(Oude in Objective-C). Zo heeft de touch-began-functie ook zijn parameters gewijzigd van NSSet naar Set.

Voor meer informatie, verwijs dit


20
2018-04-12 00:05



Dit zou controleren op meerdere aanrakingen 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)
        }
    }
}

3
2018-04-12 00:16