2016-04-08 6 views
0

Ich versuche, einen iOS sehr ähnlich das Spiel LifelineiOS - Der beste Weg, Zeilen zu einer UITableView mit einer Verzögerung hinzuzufügen?

Das Spiel sieht zu machen, als ob es nur eine Ansicht Tabelle ist, die eine Zeile nach einer Verzögerung eingeführt hat.

Ich habe es geschafft Zeilen wie diese

for obj in array { 
        self.dialogue.append(obj) 
        self.tableView.beginUpdates() 
        self.tableView.insertRowsAtIndexPaths([NSIndexPath(forRow: 0, inSection: 0)], withRowAnimation: UITableViewRowAnimation.Fade) 
        self.tableView.endUpdates() 
        }} 

* Anmerkung der self.dialogue ist meine Datenquelle für meine Tabellenansicht einzufügen.

aber ich weiß nicht, wie eine Verzögerung hinzuzufügen dazwischen eine neue Zeile hinzufügen, zum Beispiel

-> Zeile einfügen -> Warten Sie 3 Sekunden-> Legen Sie eine andere Zeile

Wie kann ich dies tun wie es im Spiel gemacht wird?

Antwort

0

Sie können eine separate Methode oder einen Block zum Einfügen der Zeilen implementieren und sie innerhalb Ihrer for-Schleife mit Verzögerung aufrufen. z.B.

var dispatchTime: dispatch_time_t = dispatch_time(DISPATCH_TIME_NOW, Int64(1.0 * Double(NSEC_PER_SEC))) 

for obj in array { 
    dispatch_after(dispatchTime, dispatch_get_main_queue(), { 
    self.dialogue.append(obj) 
    self.tableView.beginUpdates() 
    self.tableView.insertRowsAtIndexPaths([NSIndexPath(forRow: 0, inSection: 0)], withRowAnimation: UITableViewRowAnimation.Fade) 
    self.tableView.endUpdates() 
    }) 
}}