UIView在横向模式中切断

时间:2011-05-27 03:00:20

标签: objective-c xcode ios

我将几个UIViews作为子视图添加到我的主视图控制器中。我在纵向模式下的视图布局看起来很好,但是当它倾斜到横向模式时,子视图的底部部分会被切断。我想如果我设置框架的高度,它将允许屏幕滚动,从而揭示被切断的子视图的部分 - 但它没有。

- (void)didRotate:(NSNotification *)notification {

    UIDeviceOrientation orientation = [[notification object] orientation];

    if (orientation == UIDeviceOrientationLandscapeLeft) {
        self.view.frame = CGRectMake(0.0, 0.0, 1024.0, maxHeight);
    } else if (orientation == UIDeviceOrientationLandscapeRight) {
        self.view.frame = CGRectMake(0.0, 0.0, 1024.0, maxHeight);
    }
}

我还尝试将UIScrollView添加到主视图中,然后将前面提到的子视图添加到scrollView

- (void)viewDidLoad
{
    scrollView = [[UIScrollView alloc] initWithFrame:self.view.frame];
    [self.view addSubview:scrollView];

    //add views to scrollView

    [super viewDidLoad];
}

如果子视图超出屏幕尺寸,如何使主视图“滚动”?

1 个答案:

答案 0 :(得分:0)

将视图添加到滚动视图后,必须设置滚动视图的contentSize属性,以便滚动视图知道要滚动到的内容。