Вопросы по теме 'objective-c-blocks'
Кодирование блока Objective-c?
Можно ли закодировать блок Objective-C с помощью NSKeyedArchiver ?
Я не думаю, что объект Block соответствует NSCoding , поэтому [coder encodeObject:block forKey:@"block"] не работает?
Есть идеи?
2382 просмотров
schedule
31.07.2023
Как написать встроенные блоки Objective-C?
Я пытаюсь реализовать бинарный поиск с использованием блоков target-c. Я использую функцию indexOfObject:inSortedRange:options:usingComparator: . Вот пример.
// A pile of data.
NSUInteger amount = 900000;
// A number to search for.
NSNumber*...
9793 просмотров
schedule
03.07.2022
Счетчик повторов для блочной анимации UIView
Я просмотрел методы блочной анимации и заметил, что для [UIView setAnimationRepeatCount:] нет эквивалентного параметра или параметра.
Какой самый простой способ повторить анимацию фиксированное количество раз? Вы, например, соединяете их в...
7166 просмотров
schedule
03.04.2022
Настройка делегата с помощью блоков в iPhone
На контроллере представления у меня есть несколько текстовых полей, которые используют один и тот же делегат. Теперь в делегате код становится действительно уродливым, так как мне приходится различать все текстовые поля (группа if/else-if или...
1812 просмотров
schedule
09.03.2023
iOS: несовместимые типы указателей блоков
Этот код:
[UIView animateWithDuration:0.25f animations:^() {
self.view.alpha = 1.0f;
}];
генерирует эту ошибку времени компиляции:
Несовместимые типы указателей блоков, инициализирующие 'void (^)()', ожидаемые 'void (^)(void)'...
3160 просмотров
schedule
16.05.2023
iPhone: использование dispatch_after для имитации NSTimer
Не очень разбираюсь в блоках. Как бы вы подражали повторяющемуся NSTimer с dispatch_after() ? Моя проблема в том, что я хочу «приостановить» таймер, когда приложение переходит в фоновый режим, но подкласс NSTimer , похоже, не работает.
Я...
9118 просмотров
schedule
07.08.2023
Синтаксис/форматирование при вложении блоков target-c
Я складываю блоки, и это выглядит УЖАСНО. Есть ли способ написать это менее уродливо? В основном ищу предложения по синтаксису, а не по структуре, но я соглашусь и с тем, и с другим.
Мой метод блочной фабрики,
-(NSImage *(^)(CGFloat size,...
879 просмотров
schedule
24.02.2023
Как использовать NSComparator?
Я хотел бы знать, возможен ли приведенный ниже вопрос с использованием NSComparator или нет?
У меня есть два массива; оба содержат модели данных. У меня есть свойство с именем rank в модели данных. Теперь я хочу сравнить оба массива и узнать,...
15454 просмотров
schedule
16.03.2024
Как код внутри блока Objective-C может ссылаться на сам объект блока?
self - это просто захваченная переменная внутри блока и не ссылается на сам блок, так как же блок ссылаться на себя без явной захваченной переменной для этой цели?
3721 просмотров
schedule
08.03.2024
Блоки и потокобезопасность ViewController
Я рассматривал пример кода Game Center, GKTapper , и один раздел, где разработчик комментирует свою реализацию, не имеет для меня особого смысла. Код вставлен ниже. Чего я не понимаю, так это почему отправка блока, который изменяет контроллер...
1839 просмотров
schedule
06.11.2023
dispatch_sync против dispatch_async в основной очереди
Потерпите меня, это займет некоторое объяснение. У меня есть функция, похожая на приведенную ниже.
Контекст: «aProject» — это объект Core Data с именем LPProject с массивом с именем «memberFiles», который содержит экземпляры другого объекта Core...
56025 просмотров
schedule
26.07.2023
Изменение изменяемого объекта в обработчике завершения
У меня есть вопрос о безопасности потоков в следующем примере кода от Apple (из руководства по программированию GameKit)
Это для загрузки достижений из игрового центра и локального сохранения:
Шаг 1) Добавьте в свой класс изменяемое свойство...
1124 просмотров
schedule
08.01.2023
Синтаксис свойства Objective-C блочного типа (без определения типа)
Синтаксис объявления свойства, относящегося к блоку, следующий:
typedef void (^voidBlock)();
@property (nonatomic, copy) voidBlock callback;
...
@synthesize callback;
Как это можно сделать без typedef?
2396 просмотров
schedule
15.02.2024
вернуть указатель на блок
У меня есть переменная статического блока внутри класса. Как я могу объявить свойство или селектор экземпляра для возврата или отправки этого блока вызывающей стороне?
Это мой статический блок:
static NSResultComparison(^myBlock)(id obj1, id...
1270 просмотров
schedule
22.04.2022
Как я могу получить возвращаемое значение из блока завершения?
Можно ли запустить блок завершения в основном потоке?
Например, у меня есть один метод, который возвращает значение:
- (int)test
{
/* here one method is called with completion block with return type void */
[obj...
14839 просмотров
schedule
23.02.2024
NSNotification, наблюдаемый выпущенными объектами
См. обновление ниже... Хотя изначально это казалось проблемой анимации, оказалось, что проблема связана с уведомлениями. Осторожно: NSNotification будет наблюдаться даже объектами, которые вы отбросили. Обязательно removeObserver: во избежание...
318 просмотров
schedule
15.01.2024
Синхронизация блока внутри блока?
Я играю с блоками в Objective-C, пытаясь придумать многоразовый механизм, который будет принимать произвольный блок кода и объект блокировки, а затем выполнять блок кода в новом потоке, синхронизированном с предоставленной блокировкой. Идея состоит в...
1365 просмотров
schedule
25.04.2023
Ссылка на объект NSOperation в его собственном блоке завершения с помощью ARC
У меня возникли трудности с преобразованием некоторого кода NSOperation в ARC. В моем объекте операции используется блок завершения, который, в свою очередь, содержит блок GCD, обновляющий пользовательский интерфейс в основном потоке. Поскольку я...
5793 просмотров
schedule
14.06.2023
Блочная версия PerformSelectorOnMainThread:withObject:waitUntilDone:
Есть ли способ, которым я могу выполнить блок, а не селектор, соответствующий этому и подобным методам?
У меня есть наблюдатели, которые могут получать события, не сгенерированные в основном потоке. Я хочу, чтобы действие выполнялось в основном...
2897 просмотров
schedule
19.04.2022
Блоки Objective-C - сохраняет ли блок объект, на который он ссылается?
Если я использую блок при выполнении асинхронной операции, и блок ссылается на объекты и свойства контроллера представления, сохраняет ли блок их и, таким образом, не освобождает ли контроллер представления, если пользователь покидает контроллер...
4935 просмотров
schedule
29.07.2023