webentwicklung-frage-antwort-db.com.de

Fehler: 'Art des Ausdrucks ist ohne mehr Kontext mehrdeutig'

Ich bin ziemlich neu in der Codierung von Swift, entschuldigen Sie mich bitte, wenn dieser Fehler eine einfache Antwort ist! 

Ich erhalte ständig eine Fehlermeldung, die besagt, dass die Art des Ausdrucks ohne Kontext mehrdeutig ist.

    var findTimelineData: PFQuery = PFQuery(className: "Sweets")
    findTimelineData.findObjectsInBackgroundWithBlock {
        (objects:[AnyObject]?, error:NSError?) -> Void in

        if error == nil {
            for object:PFObject in objects! { // ----This is the error line---
                self.timelineData.addObject(object)
            }
        }
    }

Irgendwelche Vorschläge?

Vielen Dank!

13
Kody R.

Sie können dem Compiler helfen zu wissen, was objects so ist:

for object in objects as! [PFObject] {
    self.timelineData.addObject(object)
}
22
ayaio
if let pfObjects = objects as? [PFObject]
{
    for pfObject in pfObjects
    {
        self.timelineData.addObject(pfObject)
    }
}

... Ausrufezeichen in Swift-Code geben mir die Heeby Jeebies.

3
Tom Howard

Wenn Sie Code-Likes schreiben:

for (i, view) in views { 
}

Sie müssen enumerated hinzufügen:

for (i, view) in views.enumerated() {
}

Und jetzt sollte es klappen.

1
Zigii Wong