Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/44.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
(iphone)自动旋转不会改变我的视图';s码_Iphone_Ios_Ios5 - Fatal编程技术网

(iphone)自动旋转不会改变我的视图';s码

(iphone)自动旋转不会改变我的视图';s码,iphone,ios,ios5,Iphone,Ios,Ios5,我目前面临的难题是,当我旋转设备时,视图的大小不会改变。该视图是嵌入在滚动视图中的imageView。视图控制器嵌入在导航控制器中。下面是我的视图控制器的核心代码 - (void)viewDidLoad { [super viewDidLoad]; [[self navigationItem] setTitle:self.imageTitle]; [self.imageView setImage:self.myImage]; self.scrollView

我目前面临的难题是,当我旋转设备时,视图的大小不会改变。该视图是嵌入在滚动视图中的imageView。视图控制器嵌入在导航控制器中。下面是我的视图控制器的核心代码

- (void)viewDidLoad
{

    [super viewDidLoad];

    [[self navigationItem] setTitle:self.imageTitle];

    [self.imageView setImage:self.myImage];

    self.scrollView.delegate = self;

    self.scrollView.contentSize = self.imageView.image.size;

    double scale = self.imageView.bounds.size.width * 1.0 / self.myImage.size.width;

    if (scale > self.imageView.bounds.size.height * 1.0 / self.myImage.size.height)
        scale = self.imageView.bounds.size.height * 1.0 / self.myImage.size.height;

    self.imageView.frame = CGRectMake(0, 0, self.imageView.image.size.width,
    self.imageView.image.size.height);

    [self.scrollView setZoomScale:scale];

}

通常,有关视图的某些信息在viewDidLoad之后才会更新

在完成viewDidLoad之前。笔尖未完全加载。因此,您可能无法了解它的大小和其他详细信息

将视图大小查询移动到
视图将出现
视图显示
应该可以解决此问题


希望这对你有帮助

这是完全正确的,因为在
视图出现之前
,您的视图大小实际上无法确定-例如,您可能在
UIPopoverController
中直接显示在iPhone屏幕上,在一个
UITabBarController
中,或者在一些定制的东西中,由于iOS 5明确打算允许您这样做,您已经把自己累坏了。