Если вы хотите удалить только экземпляры UIImageView, вы можете попробовать что-то вроде этого:
for (UIView *v in self.view.subviews) {
if ([v isKindOfClass:[UIImageView class]]) {
[v removeFromSuperview];
}
}
Обновление:
Как писал vikingosegundo в комментариях, вы можете сделать это на самом деле.
Если вы добавите каждое изображение в массив, вы можете позже удалить его из представления следующим образом:
NSMutableArray *images = [[NSMutableArray alloc] init];
for Contact *contact in myArray){
if(...){
UIImageView *fix = [[UIImageView alloc] initWithImage:myImage];
[self.view addSubview:fix];
[fix setFrame:[contact square]];
[images addObject:fix]; // Add the image to the array.
return;
}
}
Позже удалите их из вида:
for (UIImageView *v in images) {
[v removeFromSuperview];
}