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