Доступ к кадру измененного размера UIImage в UIImageView - PullRequest
1 голос
/ 01 сентября 2011

Я установил UIImage в UIImageView с помощью contentMode AspectToFit. Как я могу получить доступ к кадру отображаемого UIImage с измененным размером ? потому что imageView.image.size.width дает исходную ширину изображения, а не измененную ширину.

Спасибо

1 Ответ

0 голосов
/ 01 сентября 2011

Свойство frame из UIImageView возвращает кадр отображаемого изображения.

Если вы хотите изменить кадр, просто установите новый CGRect frame на UIImageView

Например:

UIImageView *imgView;
imgView.frame = CGRectMake(0, 0, newWidth, newHeight);

Изменено:

Для расчета нового размера вы можете использовать следующий код:

UIImage *img;
UIImageView *iView;    
double widthRatio = img.size.width/iView.frame.size.width;
double heightRatio = img.size.height/iView.frame.size.height;
double ratio = widthRatio>heightRatio?widthRatio:heightRatio;
CGSize newImageSize;
newImageSize.width = img.size.width/ratio;
newImageSize.height = img.size.height/ratio;
...