objective-c-blocks

Lista Składni Deklaracji Blokowych

Składnia blokowa w Objective C (i rzeczywiście c, jak przypuszczam) jest notorycznie niezgodna. Przekazywanie bloków jako arg ... blocks. Czy istnieje obszerna lista składni deklaracji blokowych, którą mógłbym mieć pod ręką w celu szybkiego odniesienia?

Jak uniknąć przechwytywania self w blokach podczas wdrażania API?

Mam działającą aplikację i pracuję nad przekonwertowaniem jej do ARC w Xcode 4.2. Jedno z ostrzeżeń pre-check polega na przec ... rocessor startProcessing]; Pytanie: co robię " źle " i / lub jak należy to zmodyfikować, aby było zgodne z konwencjami ARC?

Oczekiwanie na wykonanie dwóch bloków asynchronicznych przed uruchomieniem kolejnego bloku

Podczas używania GCD, chcemy poczekać, aż dwa bloki asynchroniczne zostaną wykonane i wykonane przed przejściem do kolejnych ... t block3 // how to do that? dispatch_sync(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^ { // block3 });

Czy Mogę używać bloków Objective-C jako właściwości?

Czy możliwe jest posiadanie bloków jako właściwości przy użyciu standardowej składni właściwości? Czy są jakieś zmiany dla ARC ?

Kiedy używać enumerateObjectsUsingBlock vs. for

Poza oczywistymi różnicami: Użyj enumerateObjectsUsingBlock, gdy potrzebujesz zarówno indeksu, jak i obiektu nie używaj ... gorsze, gdy for (id obj in myArray) również zadziała? Jakie są zalety/wady (na przykład czy jest mniej lub bardziej wydajny)?

Zachowaj cykl na " ja " z blokami

Obawiam się, że to pytanie jest dość proste, ale myślę, że jest istotne dla wielu programistów Objective-C, którzy dostają si ... g]; }]; Chciałbym wiedzieć, co następuje: jeśli to prawda, czy jest jakiś sposób, aby uniknąć brzydoty (poza używaniem GC)?

Przypisywanie zmiennej wewnątrz bloku do zmiennej poza blokiem

I ' m getting an error Zmienna nie jest przypisywalna (Brak __Typ bloku) On the line aPerson = participant;. Jak mogę ... ([participant.gender isEqualToString:@"M"]) { aPerson = participant; *stop = YES; } }]; return aPerson;

Używanie słabego self w funkcji asynchronicznej wysyłania

Czytałem wiele postów o używaniu __weak self wewnątrz dispatch_async, a teraz jestem trochę zdezorientowany. Jeśli mam: se ... self. Ponieważ czytałem, że w niektórych przypadkach dispatch_async nie trzeba __weak self. Zobacz ostatni komentarz tutaj

Objective - C pass block jako parametr

Jak mogę przekazać Block do Function/Method? Próbowałem - (void)someFunc:(__Block)someBlock bez skutku. Ie. Co to jest typ dla Block?

Niestandardowy blok uzupełniający dla mojej własnej metody [duplikat]

To pytanie ma już odpowiedź tutaj: Jak mogę stworzyć własne metody, które przyjmują blok jako argument ... completion:^(BOOL finished){ }]; Co muszę zrobić, aby moja własna metoda zrobiła blok zakończeń?

Deklaruje parametr metody blokowej bez użycia typedef

Czy można określić parametr blokowy metody w Objective-C bez użycia typedef? To musi być, jak Wskaźniki funkcji, ale nie mo ... int) ) predicate - (void) myMethodTakingPredicate:BOOL (^predicate)(int) I nie pamiętam, jakie inne kombinacje próbowałem.

Bloki zamiast performSelector: withObject: afterDelay: [duplicate]

To pytanie ma już odpowiedź tutaj: Jak uruchomić blok po opóźnieniu, jak -performSelector:withObject:aft ... ów? Zasadniczo Szukam metody takiej jak: [self performBlock:^{ // some code } afterDelay:0.1]; To by mi się przydało.

Grand Central Dispatch (GCD) z CoreData

Używam Grand Central Dispatch (GCD)w mojej aplikacji, aby wykonać ciężkie podnoszenie. Aplikacja wykorzystuje Core-Data do ce ... peracje na moim NSManagedObject W main_queue? Niektóre z operacji, które aktualizują Może potrwać 2-3 sekundy. Proszę o radę.

Przechowuj zamknięcie jako zmienną w Swift

W Objective-C, możesz zdefiniować wejście i wyjście bloku, zapisać jeden z bloków przekazywanych do metody, a następnie użyć ... deklaracji completionHandler. Nie żebym to winił, ale jak zdefiniować zamknięcie, które można ustawić i użyć później w Swift?

Jak wysyłać w kolejce głównej synchronicznie bez impasu?

/ Align = "center" bgcolor = "# e0ffe0 " / król Danii / / align = center / Nie wiem czy aktualnie działam w głównym wątku Cz ... na wysłanie bloku asynchronicznie – aplikacja jest w sytuacji, w której blok asynchronicznie zostanie uruchomiony "za późno".

iOS 4 blokuje i zatrzymuje liczniki

Dopiero zaczynam z blocks i Grand Central Dispatch. Powiedziano mi (i przeczytałem wdokumentacja Apple ), że każdy obiekt odw ... tPredicate:predicate]; Object *newObject = [[Object alloc] init]; [someArray addObject]; [newObject release]; }

Dlaczego nie możemy użyć synchronizacji wysyłek w bieżącej kolejce?

Natknąłem się na scenariusz, w którym miałem wywołanie zwrotne delegata, które mogło wystąpić zarówno w głównym wątku, jak i ... nMain); } Jednak wydaje się to nieco wstecz. Czy to był błąd w tworzeniu GCD, czy jest coś, czego brakuje mi w dokumentach?

iOS bloki i silne / słabe odniesienia do siebie

Mam pytanie o mocne i słabe odniesienia do siebie w blokach w iOS. Wiem, że właściwym sposobem odniesienia się do siebie wewn ... strongSelf1.view.frame = CGRectZero; }); }); Wszelkie informacje lub wyjaśnienia są bardzo mile widziane!

Jak przechowywać bloki we właściwościach w Objective-C?

Chciałbym przechowywać objective - C block w obiekcie do późniejszego wykorzystania. Nie byłem pewien, jak to zrobić, więc tr ... t odpowiednikiem Block_copy/Block_release. Więc mogę użyć @property (copy) do automatycznego generowania setterów i getterów.

Jak uprościć logikę wywołania zwrotnego za pomocą bloku?

Załóżmy, że muszę komunikować się z klasą, która dostarcza protokół i wywołuje metody delegata, gdy operacja jest zakończona, ... rtykuł o blokach (w sekcji Replace Callbacks); Jak mogę napisać metodę w jakimś obiekcie, która akceptuje completionHandler:?