Ich begann viel mit Blöcken zu arbeiten und bemerkte bald, dass keine Blöcke Busfehler verursachen: typedef void (^SimpleBlock)(void); SimpleBlock aBlock = nil; aBlock(); // bus error Dies scheint gegen das übliche Verhalten von Objective-C zu verstoßen, bei dem Nachrichten an keine Objekte ignoriert werden: NSArray *foo = nil; NSLog(@"%i", [foo …
Ich bin gerade auf Blöcke gestoßen und ich denke, sie sind genau das, wonach ich suche, abgesehen von einer Sache: Ist es möglich, eine Methode [self methodName] aus einem Block heraus aufzurufen? Das versuche ich zu tun: -(void)someFunction{ Fader* fader = [[Fader alloc]init]; void (^tempFunction)(void) = ^ { [self changeWindow:game]; …
Ich möchte eine ähnliche Methode schreiben: +(void)myMethodWithView:(UIView *)exampleView completion:(void (^)(BOOL finished))completion; Ich habe im Grunde die Syntax einer der Klassenmethoden von Apple reduziert für UIView: + (void)animateWithDuration:(NSTimeInterval)duration delay:(NSTimeInterval)delay options:(UIViewAnimationOptions)options animations:(void (^)(void))animations completion:(void (^)(BOOL finished))completion; Und würde erwarten, dass es so verwendet wird: [myFoo myMethodWithView:self.view completion:^(BOOL finished){ NSLog(@"call back success"); }]; …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.