Поворот iPhone и сохранение пропорций изображения - PullRequest
0 голосов
/ 10 августа 2011

У меня есть UIScrollView, который содержит UIImageViews. Все изображения сохраняют свое соотношение - я имею в виду, например, портретное изображение высокое и узкое, а пейзажное изображение короткое и широкое. У меня есть около 4 изображений одновременно на экране (2 по вертикали, 2 по горизонтали), затем я могу прокрутить вниз.

Моя проблема - вращение устройства. Я использую

[self.imageScrollView setAutoresizingMask: UIViewAutoresizingFlexibleLeftMargin];// (etc)

И тот же метод для imageView. Но изображения не сохраняют свои пропорции. Если я установлю: UIViewAutoresizingF FlexibleWidth - изображение широкое, но высота слишком мала UIViewAutoresizingF flexWidth | UIViewAutoresizingF FlexibleHeight - изображение растягивается по горизонтали, а по вертикали - до малого.

Мне нужно повернуть устройство (портрет-> пейзаж), сделать эти 2 изображения (которые есть у меня рядом), чтобы заполнить пробел и сохранить пропорции этих изображений.

Ответы [ 2 ]

0 голосов
/ 17 августа 2011
imageView.contentMode = UIViewContentModeScaleAspectFill;

Это решило мою проблему ^^

0 голосов
/ 10 августа 2011

Попробуйте эту функцию ..

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    UIDeviceOrientation orientation = [[UIDevice currentDevice] orientation];
        if (orientation == UIDeviceOrientationPortrait) { //Device is portait 
            //Resize the images to fit this orientation
                         image1.frame = CGRectMake(x,x,x,x);
        }
        else {
            //Device is landscape..
        }   
    return YES;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...