У меня есть NSArray, заполненный UIImageViews. Я хочу сделать indexOfObject вызов массива, но используя UIImage в качестве параметра поиска. Поэтому я хочу найти индекс UIImageView на основе его свойства изображения. Есть ли простой способ сделать это или мне нужно настроить итерацию по массиву?
indexOfObject
Вы можете использовать indexOfObjectPassingTest::
indexOfObjectPassingTest:
NSUInteger index = [array indexOfObjectPassingTest:^BOOL(UIImageView *imgv, NSUInteger idx, BOOL *stop) { *stop = (imgv.image == myImage); return *stop; }];
Требуется больше памяти, но вы можете хранить NSArray ваших объектов изображения, которые имеют тот же порядок, что и ваши изображения.Тогда это простое отображение индексов.