Tag: objective-c-blocks
Blöcke sind Apple ‚ s implementation von closures für C, die auch für Objective-C und C++.
2
Antworten
Ich bin mit [NSURLConnection connectionWithRequest:req delegate:self]; und dann benutze ich -(BOOL)connection:(NSURLConnection *)connection canAuthenticateAgainstProtectionSpace:(NSURLProtectionSpace *)protectionSpace; -(void)connection:(NSURLConnection *)connection didReceiveAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge; -(void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error; -(void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response; -(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data; -(void)connectionDidFinishLoading:(NSURLConnection *)connection; Daten laden. Alles ist ok
2
Antworten
Mache ich eine Foto-app im iPhone und ich habe diese 3 Klassen: ViewController, CaptureManager, und ImgProcessor. ViewController: -(IBAction)takePic:(id)sender{ images = [captureManager takeMultipleImagesWithCompletion:^{ //Some UI related code.. [imgProcessor process:images]; }]; } CaptureManager: -(NSArray *)takeMultipleImagesWithCompletion:^(void)completionHandler{ //take picture codes... completionHandler();
2
Antworten
Vor kurzem hatte ich die Notwendigkeit für eine Funktion, die ich verwenden könnte, um zu garantieren, synchronen Ausführung einer gegebenen block auf einen bestimmten serielle dispatch queue. Es war die Möglichkeit, dass diese gemeinsame Funktion aufgerufen werden
2
Antworten
Wie deklarieren wir eine Globale(private Instanz-variable) zu akzeptieren, einen block in es. Müssen wir eine Synthese, die es & was sind die Speicher-management-Implikationen, die mit es. Ich einem block, erhalten aus einer Dritten Methode, die ich speichern
5
Antworten
Habe ich mir einige der Vorträge bilden WWDC 2010 und lese auch die meisten der Dokumente, die auf Blöcke und Parallelität und habe ein paar Fragen bezüglich der Verwendung von Bausteinen mit seriellen queues, die in "Grand
2
Antworten
Ich versuche, meinen Kopf um die Differenz und der Nutzung zwischen diese 2: static void *myFirstQueue = "firstThread"; dispatch_queue_t firstQueue = dispatch_queue_create("com.year.new.happy", DISPATCH_QUEUE_CONCURRENT); dispatch_queue_set_specific(firstQueue, myFirstQueue, (void*) myFirstQueue, NULL); Frage #1 Was ist der Unterschied zwischen diesem: dispatch_sync(firstQueue,
1
Antworten
Nach der Lektüre über Swift Verschlüsse und versuchen, zu verwenden die gleiche syntax übergeben Sie eine anonyme Funktion, in der handler-ich kann es nicht kompilieren. Wie kann ich korrekt neu erstellen, die folgende Funktion objective-c code in
1
Antworten
Arbeite ich an diesem code, die nicht einige längere asynchrone Betrieb auf dem Netz und wenn es fertig ist löst es ein Abschluss-block, wo einige test ausgeführt wird und wenn eine variable eine bestimmte Wert eine weitere
3
Antworten
Ich habe eine Fragen über Blöcke in Objective-C. Ich habe zum Beispiel diesen code: __block int count = 0; void (^someFunction)(void) = ^(void){ count = 4; }; count +=2; Was wäre die richtige Art und Weise zu
3
Antworten
Ich bin ganz neu auf Blöcke und objective-c, und ich bin versucht zu schreiben, meine ersten Kategorie mit beiden. Meine Idee ist das erstellen einer Kategorie auf NSTimer, der erhält einen block als parameter, und dieser block
1
Antworten
Ich bin mit Swift zu machen, ein Spiel, in SpriteKit. In Objective-C könnte ich die folgende Methode: (void)enumerateChildNodesWithName:(NSString *)name usingBlock:(void (^)(SKNode *node, BOOL *stop))block Aktionen, die *node, aber ich kann nicht mit dieser Funktion arbeiten in Swift.
2
Antworten
Ich habe eine UIScrollView Unterklasse, ich bin programmatisch scrollen mit UIView-Animationen. Ich würde gerne die Benutzer werden in der Lage zu Tippen oder Zoomen Sie in das UIImageView Inhalt des Scroll-View während die animation stattfindet. Das hat
2
Antworten
Ich fange gerade mit Blöcken und Grand Central Dispatch. Ich habe gesagt (und gelesen in den Apple-Dokumentation), dass alle referenzierten Objekts innerhalb eines Blocks wird beibehalten. Zum Beispiel: ^{ self.layer.transform = CATransform3DScale(CATransform3DMakeTranslation(0, 0, 0), 1, 1, 1);
3
Antworten
Ist, habe ich mich auf die Methoden, die für block-basierte Animationen und bemerkt, gibt es keine äquivalente parameter oder eine option für [UIView setAnimationRepeatCount:]. Was ist der einfachste Weg, um zu wiederholen, eine animation, eine Feste Anzahl
2
Antworten
UPDATE | ich habe hochgeladen ein Beispiel-Projekt mit dem panel und stürzt sich hier: http://w3style.co.uk/~d11wtq/BlocksCrash.tar.gz (ich weiß, der "..." - Schaltfläche, die nichts tut, habe ich nicht implementiert, die es noch). UPDATE 2 | Gerade entdeckt habe
2
Antworten
Den IMP geben Sie in Objective-C stellt eine Funktion Zeiger, wie weit ich als verstehen. Gibt es eine Möglichkeit, um eine IMP aus einem block-pointer? Vielen Dank für Eure Ideen. Ich habe eine Reihe von tags; 'objective-c-Laufzeit'
3
Antworten
Kann ich speichern ^block in einem Wörterbuch oder ein array? Ich hören muss, um eine server-Meldung, die ich brauche, um eine block zu Griff die Meldung, und in meinem Projekt mehrere view-Controller alle hören wollen, die Meldung,
1
Antworten
-(NSMutableArray *)sortArrayByProminent:(NSArray *)arrayObject { NSArray * array = [arrayObject sortedArrayUsingComparator:^(id obj1, id obj2) { Business * objj1=obj1; Business * objj2=obj2; NSUInteger prom1=[objj1 .prominent intValue]; NSUInteger prom2=[objj2 .prominent intValue]; if (prom1 > prom2) { return NSOrderedAscending; } if
2
Antworten
Habe ich zwei GCD Blöcke, die sind async. Die erste ist für den hintergrund-thread, der zweite läuft auf dem main thread. Dies funktioniert gut, aber ich sah nur irgendwo reden, dass ich vielleicht brauchen, um Sie zu
1
Antworten
In Objective-C kann ich dies tun: @property (nonatomic, copy) void(^completion)(MyObject * obj); Was ist der richtige Weg, dies zu tun in swift? möglich, Duplikat der swift : Schließung Erklärung wie der block-Deklaration Ich habe die Antwort, ich
3
Antworten
Was ist NSComparisonResult und NSComparator? Habe ich einen gesehen, der die type-Definitionen, so etwas wie, dass: typedef NSComparisonResult (^NSComparator)(id obj1, id obj2); Ist es irgendwie anders als eine Funktion Zeiger? Auch, ich kann nicht einmal erraten, was
6
Antworten
Ich bin mit AFNetworking für asynchrone Aufrufe an eine web service. Einige dieser Aufrufe müssen in Reihe geschaltet werden, wobei die Ergebnisse von call-A-by-call B die verwendet werden, durch aufrufen von C, etc. AFNetworking Griffe Ergebnisse der
4
Antworten
Ich habe ein problem mit diesem block. Ich versucht, um die Daten in den block, der NSURLSession. hier ist mein code -(NSDictionary *) RetrieveData{ NSURLSession * session = [NSURLSession sharedSession]; NSURL * url = [NSURL URLWithString: self.getURL];
4
Antworten
Begann ich mit blocks a Menge und bald gemerkt, dass der null-Blöcke Ursache bus-Fehler: typedef void (^SimpleBlock)(void); SimpleBlock aBlock = nil; aBlock(); //bus error Scheint dies, gegen das übliche Verhalten von Objective-C ignoriert, dass Nachrichten, die zu null-Objekte:
3
Antworten
Habe ich ein modal-view-controller, rief ich aus einem anderen view-controller. Nach der Entlassung des modal-view-controller, ich will eine Methode aufgerufen werden, auf der view-controller, vorgestellt, die in der modal-Ansicht. Was ist der einfachste Weg, dies zu tun?
4
Antworten
Ich versuche zu aufrufen, einige sperren, aber ich Laufe in einem EXC_BAD_ACCESS. -(void) methodA { self.block = ^ { [self methodB]; }; } -(void) webViewDidFinishLoad:(UIWebView *)webView { [block invoke]; //error here (block is not valid id type).
3
Antworten
Wie es aussieht, habe ich nicht bekommen, das Konzept der Blöcke, die vollständig noch... In meinem code habe ich, um aus der JSON-Daten aus der asychronous block zurückgebracht werden, aus der ' outer ' - Methode. Ich
2
Antworten
Ich bin mit einem block von Facebook SDK. Es gibt ein Wörterbuch. Ich will das dictionary als Rückgabewert einer Methode. Ich bin versucht, wickeln Sie meinen Kopf herum, die ganze block-Konzept, brauchen aber einen Schubs in die
1
Antworten
[AsyncRequest performGetRequestWithUrl:[NSString stringWithFormat:@"http://%@/api/streams/%d", @"server.herokuapp.com", userId] completionHandler:^(NSDictionary *result, NSError *error) { //Create new SBJSON parser object NSError *e; NSArray *jsonArray =[NSJSONSerialization JSONObjectWithData:result options:NSJSONReadingMutableContainers error: &e]; NSLog(@"parse result to JSON object with jsonArray: %@ and error: %@", jsonArray, e.description);
4
Antworten
Habe ich eine große Kopfschmerzen mit dem Thema. Ich arbeite an einer Anwendung, muss die Umfrage auf einem webserver regelmäßig, um zu prüfen, ob neue Daten. Auf der Grundlage der zurückgegebenen Informationen, ich möchte die push-lokale Benachrichtigung
6
Antworten
Haben eine harte Zeit, herauszufinden, wie man richtig deklarieren/verwenden Blöcke mit swift. Was wäre das swift-entspricht den folgenden code? Dank. ^(PFUser *user, NSError *error) { if (!user) { NSLog(@"Uh oh. The user cancelled the Facebook login."); }
3
Antworten
Ich bin mit block-basierten enumeration-ähnlich wie der folgende code: [[[rows objectForKey:self.company.coaTypeCode] objectForKey:statementType] enumerateObjectsWithOptions:NSEnumerationConcurrent usingBlock:^(id coaItem, NSUInteger idx, BOOL *stop) { //block code here }] Möchte ich entfernen Sie einige Objekte, die während der enumeration-Prozess abhängig von der
1
Antworten
Ich würde gerne wissen, ob die folgende Frage ist es möglich mit NSComparator oder nicht? Ich habe zwei arrays; beide halten Daten-Modelle. Ich habe ein Objekt mit der Eigenschaft Rang im Daten-Modell. Ich möchte nun vergleichen Sie
2
Antworten
Lese ich viele Beiträge über die Verwendung __weak self innen dispatch_asyncund jetzt bin ich ein litle bisschen verwirrt. wenn ich : self.myQueue = dispatch_queue_create("com.biview.core_data", NULL); dispatch_async(self.myQueue, ^(void){ if (!self.var1) { self.var1 = ...; } dispatch_async(dispatch_get_main_queue(), ^(void) {
10
Antworten
Ich versuche herauszufinden, ein Weg, um typeof zu erstellen, die einen schwachen Verweis auf self für den Einsatz in Blöcken zu vermeiden, behalten Zyklen. Als ich zum ersten Lesen über diese, es scheint, dass das übereinkommen zu
3
Antworten
Ich war das Lesen der Dokumentation von apple über Speicher-management-wenn ich autorelease pool Blöcke und etwas gab mir zu denken. Any object sent an autorelease message inside the autorelease pool block is released at the end of
4
Antworten
Ich versuche, zu synchronisieren, die folgenden code in iOS5: ein Objekt hat eine Methode, die eine HTTP-Anforderung von dem es wird einigen Daten, einschließlich einer URL zu einem Bild sobald die Daten eintreffen, werden die textuellen Daten
4
Antworten
Ich bin noch neu in Blöcke in objective-c und Fragen, wenn ich diese Pseudo-code zu korrigieren. Ich bin mir nicht sicher, ob es genug ist, entfernen Sie einfach den Beobachter zu oder wenn ich zu rufen, removeObserver:name:Objekt:
3
Antworten
Ich habe gerade stolperte über die folgenden SO-Thema: Warum sollten wir kopieren die Blöcke eher als behalten? was hat der folgende Satz: Jedoch, wie von iOS 6 Sie behandelt werden als normale Objekte, so dass Sie brauchen
2
Antworten
Muss ich durchqueren alle Schlüssel/Werte-Paaren ein Wörterbuch und etwas tun, mit beiden Felder. Ich Frage mich, was ist effizienter, die traditionelle "foreach key" - Ansatz oder die Blöcke Ansatz mit enumerateKeysAndObjectsUsingBlock:. Hier haben Sie ein Beispiel: Traditionellen
8
Antworten
Was genau macht der __block Schlüsselwort in Objective-C zu bedeuten? Ich weiß, es ermöglicht das ändern von Variablen innerhalb von Blöcken haben, aber ich würde gerne wissen... Was genau sagt der compiler? Tut es sonst noch etwas?
4
Antworten
Habe ich meine eigene Methode, die einen block als argument. Ich will zu verfolgen, block in ein NSDictionary. Was ist der beste Weg, um den block mit dem Wörterbuch? Ich versuchte diesen code, aber nach dem ausführen
9
Antworten
Schaute ich mich um, konnte aber nichts finden, das auf das internet, noch überall in den Apple-docs, so dass ich vermute, es existiert nicht. Aber ist es ein iOS4-Blöcke entspricht API: [button addTarget:self action:@selector(tappy:) forControlEvents:UIControlEventTouchUpInside]; Ich nehme
3
Antworten
Muss ich Versand Sie einen block auf der main queue synchron. Ich weiß nicht, ob ich bin derzeit auf der main-thread oder nicht. Die naive Lösung sieht wie folgt aus: dispatch_sync(dispatch_get_main_queue(), block); Aber wenn ich derzeit innerhalb
6
Antworten
Lese ich Apple-Dokumentation nach, wie man die serielle Warteschlangen, um sicherzustellen, dass die Aufgaben ausführen, die in einer vorhersehbaren Reihenfolge, aber jetzt bin ich verwirrt zu viel. Einige, wie ich in der Lage bin zu arbeiten Seriell,
8
Antworten
Ist es möglich, Blöcke als Eigenschaften, die über die standard-Eigenschaft syntax? Gibt es änderungen für ARC? InformationsquelleAutor der Frage gurghet | 2010-10-14
5
Antworten
Angesichts der folgenden: - (void) someMethod { dispatch_async(dispatch_get_main_queue(), ^{ myTimer = [NSTimer scheduledTimerWithTimeInterval: 60 target: self selector: @selector(doSomething) userInfo: nil repeats: NO]; }); } Wo myTimer deklariert ist, in eine private Schnittstelle: @interface MyClass() { NSTimer *
3
Antworten
Ich habe eine Frage über starke und schwache Referenzen, um sich selbst in Blöcken in iOS. Ich weiß, den richtigen Weg zu finden, um sich selbst in einen block zu schaffen, ist ein schwacher Verweis außerhalb des
5
Antworten
Apples Grand Central Dispatch Referenz sagt: "...wenn Ihre Anwendung benötigt, um arbeiten auf der Unix-Ebene von der system—zum Beispiel, wenn es braucht, zum Bearbeiten der Datei-Deskriptoren, Mach ports, Signale oder Timer. GCD ist nicht beschränkt auf system-Ebene
2
Antworten
Ich bin immer verwirrt mit der Nutzung des selbst im inneren blocks, ich gehe durch einige der Apple-Dokumente aber noch nicht finden können, die richtige Antwort. Einige Leute immer sagen, schwachen selbst in Blöcken, aber einige sagen,