Дополнительной опцией, когда вам требуется отправить несколько объектов с performSelector
, является (если это достаточно просто сделать) изменение метода, который вы хотите вызвать, для получения объекта NSDictionary
вместо нескольких параметров, как вы ' Вы сможете отправлять столько слов, сколько хотите в словаре.
Например
У меня был метод, похожий на этот, который имел 3 аргумента, и мне нужно было вызвать его из executeSelector -
-(void)getAllDetailsForObjectId:(NSString*)objId segment:(Segment*)segment inContext:(NSManagedObjectContext*)context{
Я изменил этот метод, чтобы использовать словарь для хранения аргументов
-(void)getAllDetailsForObject:(NSDictionary*)details{
поэтому я смог легко вызвать метод
[self performSelector:@selector(getAllDetailsForObject:) withObject:@{Your info stored within a dictionary}];
Думал, что я поделюсь этим как альтернативным вариантом, поскольку он работает для меня.
Приветствия