Вопросы по теме 'objective-c-blocks'

Символ вставки между типами, а не переменными, окруженный круглыми скобками
Я просматривал документацию Apple и увидел что-то вроде этого (void (^)(void)) . Кто-нибудь может объяснить, что означает это утверждение? ^ это XOR, верно? void XOR void не имеет для меня особого смысла? Еще было что-то вроде (void...
784 просмотров

Ссылки на блоки как переменные экземпляра в Objective-C
Мне было интересно, можно ли сохранить ссылку на анонимную функцию (блок) в качестве переменной экземпляра в Objective-C. Я знаю, как использовать делегирование, целевое действие и т. д. Я не об этом.
20154 просмотров
schedule 06.01.2024

Как создать в коде имена IBOutlet, чтобы их можно было изменить?
Скажем, у меня есть несколько UILabels, которые были настроены в IB и подключены к IBOulets в коде (label1, label2, label3, label4) Как мне создать эти имена переменных в коде, чтобы я мог изменять текст каждой из них в цикле, где метки берутся из...
302 просмотров

Удаление управляемых объектов в фоновом блоке
На iPhone я пытался удалить управляемые объекты в фоновом режиме: - (void) cleanUp { dispatch_queue_t queue_cleanUp; queue_cleanUp = dispatch_queue_create("com.aroundcal.cleanup", NULL); dispatch_async(queue_cleanUp, ^{ while...
256 просмотров

Блок UIButton эквивалентен методу addTarget:action:forControlEvents:?
Я осмотрелся, но не смог найти это ни в Интернете, ни где-либо в документации Apple, поэтому я предполагаю, что этого не существует. Но есть ли блоки iOS4, эквивалентные API для: [button addTarget:self action:@selector(tappy:)...
36421 просмотров
schedule 31.07.2022

Как прокомментировать расширение блока Apple для Doxygen?
Doxygen объявил в своем журнале изменений для версии 1.7.2 о поддержке блочного расширения Apple . Интересно, какой синтаксис для создания документации. Никакой подсказки я не нашел - в конфигурационном файле doxygen (версия 1.7.2) тоже нет....
787 просмотров

Могу ли я использовать блоки Objective-C в качестве свойств?
Можно ли иметь блоки как свойства, используя стандартный синтаксис свойств? Есть ли какие-либо изменения для ARC ?
120294 просмотров

NSComparisonResult и NSComparator — что это такое?
Что такое NSComparisonResult и NSComparator ? Я видел одно из определений типа, что-то вроде этого: typedef NSComparisonResult (^NSComparator)(id obj1, id obj2); Отличается ли он от указателя на функцию? Кроме того, я даже не могу...
21932 просмотров

Как запустить блок после задержки, например -performSelector: withObject: afterDelay :?
Есть ли способ вызвать блок с примитивным параметром после задержки, например, с использованием performSelector:withObject:afterDelay: , но с аргументом типа _2 _ / _ 3 _ / _ 4_?
364379 просмотров

Можно ли определить блок как член класса?
Я пытаюсь реализовать очень простой класс стратегии в Objective-C, который позволяет определять стратегии как встроенные, а не через наследование. В настоящее время мой код выглядит так: @interface SSTaskStrategy : NSObject { (NSArray...
2489 просмотров
schedule 13.01.2023

Grand Central Dispatch (GCD) и асинхронные API
Я использую Twitter API для публикации твитов. Иногда это может занять некоторое время, поэтому я хочу выполнить операцию «Публикация твита» в фоновом режиме. Для этого я использую GCD, например: - (void)myClassMethodToPostTweet {...
1228 просмотров

EXC_BAD_ACCESS вызывает блок
ОБНОВЛЕНИЕ | Я загрузил пример проекта с использованием панели и сбоя здесь: http://w3style.co.uk/~d11wtq/BlocksCrash.tar.gz (я знаю, что кнопка "Выбрать..." ничего не делает, я еще не реализовал ее). ОБНОВЛЕНИЕ 2 | Только что обнаружил, что...
5622 просмотров

setKeepAliveTimeout и фоновые задачи
У меня большая головная боль с этой темой. Я работаю над приложением, которое должно регулярно опрашивать веб-сервер, чтобы проверять наличие новых данных. На основе возвращенной информации я хочу отправить локальное уведомление пользователю. Я...
19625 просмотров

iOS 4 блокирует и сохраняет счетчики
Я только начинаю работать с блоками и Grand Central Dispatch. Мне сказали (и я прочитал в документацию Apple ), что любой объект, на который ссылаются внутри блока, сохраняется. Например: ^{ self.layer.transform =...
8963 просмотров

Цель C - блокировать вопрос?
У меня есть следующий метод + (NSString*)getMeMyString { NSString *result; dispatch_async(dispatch_get_main_queue(), ^{ result = [ClassNotThreadSafe getString]; }); return result; } Как я могу заставить блок выполнять...
646 просмотров

Переменная Obj-C __block сохраняет поведение
Я сталкиваюсь со странной проблемой при попытке доступа к переменной __block (изменяемый блок) из-за пределов блока, в котором она изменена. Это очень игрушечный пример, который я использую только для того, чтобы лучше понять блоки в целом, но в...
4146 просмотров

Возможность сохранения цикла с помощью animateWithDuration:
Могу ли я когда-нибудь столкнуться с циклом сохранения блока с помощью animateWithDuration:animations:completion: ? Если да, то не могли бы вы показать мне пример? Также я не смог найти в документе Apple, что блок completion: копируется в кучу....
715 просмотров
schedule 17.07.2023

Заставьте блоки iOS выполняться синхронно
Как заставить блок выполняться синхронно или заставить функцию ждать обработчика перед оператором возврата, чтобы данные можно было передать обратно из блока? -(id)performRequest:(id)args { __block NSData *data = nil; [xyzclass...
18328 просмотров

Рекурсивный метод, содержащий блок UIAnimation, как правильно освободить
Я сделал небольшой «загрузчик», который я могу прикрепить к пользовательскому интерфейсу, когда мне это нужно. Очень похоже на UISpinnerView. У него есть некоторая логика (я упростил код в блоке для этого поста), которая требует рекурсивного...
636 просмотров

Странный сбой при обмене аргументами блока и фантомного блока
Я полностью озадачен этим и надеюсь, что кто-то может мне помочь здесь: Класс А : - (void)setBlock:(BOOL(^)(id sender))block { myBlock = Block_copy(block); } - (BOOL)runBlock:(id)sender { myBlock(sender); } Класс B : -...
7679 просмотров
schedule 07.09.2022