2015-02-25 2 views
1

Я загружаю довольно большое изображение и сохраняю его в UIImage. Затем я добавляю UIImage в UIImageView для отображения, но UIImage слишком велик, и, таким образом, он отображает только часть изображения (в верхнем левом углу). Я хочу, чтобы он отображал весь UIImage, масштабируя изображение до соответствия UIImageView.Скачан большой масштаб UIImage в UIImageView

Я просмотрел множество разных ответов, но я не могу заставить их работать. Я установил режим масштабирования UIImageView как для Aspect Fill, так и для вас, и вы назовите его (также попробовали подзаголовки клипов), но ничего не работает.

Вот код:

UIImage *trackImg = [UIImage imageWithContentsOfFile:trackImagePath]; 
_backgroundImage.image = trackImg; 

код прост, но все это делает скачать UIImage, и установить его в качестве образа UIImageView. UIImageView настроен в интерфейсе-застройщике.

Заранее спасибо.

+0

Вы можете показать свой код? –

+0

doh извините, добавлено сейчас. –

+0

Вы установили _backgroundImage.contentMode = UIViewContentModeScaleAspectFit; ? так вы проверили рамку _backgroundImage? –

ответ

0

Ошибка была в размере imageView (спасибо Huy Nghia). Я установил ограничения неправильно, в результате чего изображениеView было другого размера, чем я ожидал, что я не мог легко обнаружить, так как я хотел, чтобы он заполнил весь экран.

Если у кого-то еще есть трудности, попробуйте убедиться, что ваши ограничения правильные.

2

Вы можете изменить размер изображения с помощью метода scaleToSize:

-(UIImage *)imageWithImage:(UIImage *)image scaledToSize:(CGSize)newSize { 
    UIGraphicsBeginImageContextWithOptions(newSize, NO, 0.0); 
    // Here pass new size you need 
    [image drawInRect:CGRectMake(0, 0, newSize.width, newSize.height)]; 
    UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext(); 
    UIGraphicsEndImageContext(); 
    return newImage; 
} 

Пройди свой UIImage и он должен изменить. Позвоните по следующему методу:

[self imageWithImage:[UIImage imageNamed:@"yourImage.png"] scaledToSize:CGSizeMake(25,45)]; 
Смежные вопросы