__block in Swift
__block
Schlüsselwort auf eine variable in Objective C
verwendet, um sicherzustellen, dass diese variable behandelt werden, speziell in block
, aber was ist das äquivalent zu diesem keyword in swift
?
Ich habe schon einige google-Recherchen, aber alles verwirrt mich so weit.
Folgendes ist mein code :
var myArr = NSMutableArray()
completionBlock(myArray,nil)
Habe ich versucht
__block var myArr = NSMutableArray()
- Was bist du eigentlich machen willst?
- Was finden Sie selbst nicht in der Lage zu tun, jetzt, dass Sie nicht verwenden können
__block
? Was ist das "Besondere", das Sie zu erreichen versuchen? - Ich bin parsing-Ergebnis abrufen. public func parseFetchResults(fetchResults: NSObject?, completionBlock: FbFetchParseCompletionBlock);
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es keine Notwendigkeit für
__block
im Swift. Eine erfasste variable wird automatisch einstellbar von innerhalb der Schließung.var bgTask = app.beginBackgroundTask { app.endBackgroundTask(bgTask) bgTask = UIBackgroundTaskInvalid }
Ich bin immer Fehler auf dieser Linie. Fehler:Variable used within its own initial value
.var bgTask: UIBackgroundTaskIdentifier = 0;
. Initialisieren derbgTask
getrennt wird, dieses Problem zu lösen. Aber ich bin jetzt verwirrt mitA captured variable is automatically settable from within the closure.
Linie. 😐