iOS: настройка изображения для UIImageView из загруженного изображения с правильным масштабным коэффициентом для дисплеев сетчатки

Я работаю на устройствах iOS с дисплеями Retina. В основном у меня есть UIImageView и установите его изображение, загрузив изображение JPEG в папку документов.

Скажем, UIImageView имеет размер 100х100 баллов. И изображение JPEG имеет размеры 200x200 пикселей. Насколько я понимаю, изображение в формате JPEG следует просматривать в UIImageView без какого-либо масштабирования. Я читаю изображение JPEG как

NSString *docDir = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) objectAtIndex:0];            
NSString *jpegFilePath = [NSString stringWithFormat:@"%@/im_%d_%d.jpeg",docDir, dbPhotoId, i];
UIImage* tmpImage = [UIImage imageWithContentsOfFile:[NSString stringWithFormat:@"%@", jpegFilePath]];

UIImage* tmpImage имеет масштабный коэффициент 1 и ширину и высоту 200 и 200 (наблюдается из tmpImage.scale, tmpImage.size.width а также tmpImage.size.height).

В этом случае, если я установлю свойство изображения UIImageView (с размерами 100x100 точек) в качестве tmpImageМогу ли я с уверенностью предположить, что не будет проблем с масштабированием или отображением сетчатки?

1 ответ

Это зависит от стоимости contentMode Свойство просмотра изображения. Если значение UIViewContentModeScaleToFill изображение будет хорошо смотреться на дисплеях сетчатки, но это неправильный способ сделать это.

Лучше иметь две версии ваших изображений, одну для обычного отображения, а другую для сетчатки, как описано здесь.

Другие вопросы по тегам