Ich versuche mein CollectionView zu laden, nachdem meine Daten geladen sind, aber ich weiß nicht, wie genau ich einen CompletionHandler dazu verwenden soll. danken für die Hilfe mein Code unten: für Abrufen von Daten:CollectionView und CompletionHandler
func GETData(){
urlString = "https://api.backendless.com/v1/data/Pub?pageSize=10&offset="+String(offset)
let session = NSURLSession.sharedSession()
let url = NSURL(string: urlString)!
let request = NSMutableURLRequest(URL: url)
request.setValue(applicationId, forHTTPHeaderField: "application-id")
request.setValue(secretKey, forHTTPHeaderField: "secret-key")
let task = session.dataTaskWithRequest(request, completionHandler: { (data: NSData?,response: NSURLResponse?, error: NSError?) in
if let responseData = data
{
parseDATA(responseData)
}
})
task.resume()
offset+=(pubs.count-offset)
urlString = "https://api.backendless.com/v1/data/Pub"
}
und für colelectionView Belastung:
override func viewDidLoad() {
pubs.removeAll()
GETData()
super.viewDidLoad()
typealias UIActivityViewControllerCompletionHandler =() -> Void
print("AKTUAL: "+String(pubs.count))
collectionView.delegate = self
collectionView.dataSource = self
// Do any additional setup after loading the view.
}
Sobald Sie die Daten analysiert haben ('parseDATA()', wie es scheint), laden Sie die UICollectionView erneut. – Larme