Czy istnieje sposób na wywołanie bloku z prymitywnym parametrem po opóźnieniu, np. Użycie, performSelector:withObject:afterDelay:ale z argumentem takim jak int/ double/
Bloki to implementacja zamknięć dla C firmy Apple, które są również dostępne dla Objective-C i C ++.
Czy istnieje sposób na wywołanie bloku z prymitywnym parametrem po opóźnieniu, np. Użycie, performSelector:withObject:afterDelay:ale z argumentem takim jak int/ double/
Co dokładnie oznacza __blocksłowo kluczowe w celu C? Wiem, że pozwala modyfikować zmienne w blokach, ale chciałbym wiedzieć ... Co dokładnie mówi kompilatorowi? Czy robi coś jeszcze? Jeśli to wszystko, co robi, to dlaczego jest potrzebne? Czy jest to gdzieś w dokumentacji? (Nie mogę tego...
Dostaję błąd Zmiennej nie można przypisać (brak specyfikatora typu __block) na linii aPerson = participant;. Jak mogę się upewnić, że blok ma dostęp do aPersonzmiennej i że aPersonzmienna może zostać zwrócona? Person *aPerson = nil; [participants enumerateObjectsUsingBlock:^(id obj,...
Czy można mieć bloki jako właściwości przy użyciu standardowej składni właściwości? Czy są jakieś zmiany w ARC
Składnia bloku w celu C (i rzeczywiście C, jak przypuszczam) jest notorycznie niestosowna. Przekazywanie bloków jako argumentów wygląda inaczej niż deklarowanie bloków jako ivars, które wyglądają inaczej niż typedefblokowanie bloków. Czy istnieje wyczerpująca lista składni deklaracji blokowej,...
Mam działającą aplikację i pracuję nad konwersją jej na ARC w Xcode 4.2. Jedno z ostrzeżeń wstępnych polega na selfsilnym uchwyceniu w bloku prowadzącym do cyklu zatrzymania. Zilustrowałem prosty przykład kodu, aby zilustrować problem. Wydaje mi się, że rozumiem, co to oznacza, ale nie jestem...
Korzystając z GCD, chcemy przejść do wykonania i wykonania dwóch bloków asynchronicznych, zanim przejdziemy do kolejnych kroków wykonania. Jak najlepiej to zrobić? Wypróbowaliśmy następujące, ale wydaje się, że to nie działa: dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH,...
Obawiam się, że to pytanie jest dość proste, ale myślę, że jest istotne dla wielu programistów Objective-C, którzy wchodzą do bloków. Słyszałem, że skoro bloki przechwytują zmienne lokalne, do których odwołują się w nich jako constkopie, użycie selfw bloku może skutkować cyklem zachowania, jeśli...
Oprócz oczywistych różnic: Użyj, enumerateObjectsUsingBlockgdy potrzebujesz zarówno indeksu, jak i obiektu Nie używaj, enumerateObjectsUsingBlockgdy musisz zmodyfikować zmienne lokalne (myliłem się, zobacz odpowiedź bbum) Czy enumerateObjectsUsingBlockogólnie uważa się, że lepiej czy gorzej,...
Czy można określić parametr bloku metody w Objective-C bez użycia typedef? Musi być, podobnie jak wskaźniki do funkcji, ale nie mogę trafić w składnię wygrywającą bez użycia pośredniej czcionki: typedef BOOL (^PredicateBlock_t)(int); - (void)
Jak mogę przejść Blockdo Function/ Method? Próbowałem - (void)someFunc:(__Block)someBlockbez skutku. to znaczy. Jaki jest typ dla
W Objective-C możesz zdefiniować wejście i wyjście bloku, zapisać jeden z tych bloków, który jest przekazany do metody, a następnie użyć tego bloku później: // in .h typedef void (^APLCalibrationProgressHandler)(float percentComplete); typedef void (^APLCalibrationCompletionHandler)(NSInteger...
Mam metodę, która akceptuje blok i blok uzupełniania. Pierwszy blok powinien działać w tle, a blok uzupełniania w dowolnej kolejce, w której wywołano metodę. W przypadku tego ostatniego zawsze używałem dispatch_get_current_queue(), ale wygląda na to, że jest przestarzały w iOS 6 lub nowszym....
Czytam dokumentację Xcode i jest coś, co mnie zastanawia: __block typeof(self) tmpSelf = self; [self methodThatTakesABlock:^ { [tmpSelf doSomething]; }]; Z dokumentacji skopiowano: Blok stanowi silne odniesienie do przechwytywanych zmiennych. Jeśli używasz selfw bloku, blok tworzy silne...