(iphone)自动旋转不会改变我的视图';s码
我目前面临的难题是,当我旋转设备时,视图的大小不会改变。该视图是嵌入在滚动视图中的imageView。视图控制器嵌入在导航控制器中。下面是我的视图控制器的核心代码(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
- (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明确打算允许您这样做,您已经把自己累坏了。