我有一个滚动视图,它会自动生成一系列包含图像视图的子视图。这个概念是它几乎是一个自定义的 PDF 样式阅读器,其中每个页面都作为图像加载到 imageview 中。共有三个“层”——外部 UIScrollView、自动生成的 subViews 和 subview 内部的 imageview。
我的困境是,当这些子视图生成时,它们并没有真正的硬参考,所以在我的 didRotateFromInterfaceOrientation 中没有办法说调整这个特定视图的大小。
我创建了一个名为 setUpView 的函数,它初始化所有视图和图像:
- (void)setUpView {
//INITIALISE PAGING SCROLL VIEW
CGRect pagingScrollViewFrame = [[UIScreen mainScreen] bounds];
pagingScrollViewFrame.origin.x -= 10;
pagingScrollViewFrame.size.width += 20;
pagingScrollView = [[UIScrollView alloc] initWithFrame:pagingScrollViewFrame];
//CONFIGURE PAGING SCROLL VIEW
pagingScrollView.pagingEnabled = YES;
pagingScrollView.backgroundColor = [UIColor blackColor];
pagingScrollView.contentSize = CGSizeMake(pagingScrollViewFrame.size.width*7, pagingScrollViewFrame.size.height);
//ACTIVATE PAGING SCROLL VIEW
self.view = pagingScrollView;
//ADD PAGES TO SCROLL VIEW
for (int i = 0; i < 7; i++){
ImageScrollView *page = [[[ImageScrollView alloc] init] autorelease];
[self configurePage:page forIndex:i];
[pagingScrollView addSubview:page];
}
}
在我的 loadView 方法中,我只是调用了这个函数。
有什么方法可以检测设备的当前方向,以便可以以某种方式输入到上述功能中?目前,在旋转时,outerview 旋转良好,但内部子视图和 imageviews 没有。