Вы можете проверить, имеет ли устройство дисплей с высоким разрешением сетчатки и на основании этого загрузить другое изображение. Не беспокойтесь о фотографиях и других материалах, которые вы все равно масштабировали бы в зависимости от размера интерфейса.
Вы можете создать уменьшенную версию загруженного изображения с помощью
UIImage *image = //download...
image=[UIImage imageWithCGImage:[image CGImage] scale:2.0 orientation:UIImageOrientationUp];
Имейте в виду, что масштабированное изображение 100x100 станет изображением размером 50x50 точек (со шкалой 2,0).
Сначала проверьте, есть ли у вас дисплей сетчатки
BOOL retina = NO;
if([[UIScreen mainScreen] respondsToSelector:@selector(scale)])
retina = [[UIScreen mainScreen] scale] == 2.0 ? YES : NO;