嗨,我有一个问题,我基于苹果示例应用程序创建了一个名为photoscroller的应用程序,我想添加一个登录屏幕。但是当我添加它时,显示的视图向上移动10-15像素,并且在下面可见主窗口。问为什么?

我的部分代码:

认为确实加载:

    InfoViewController *infoView =  [[InfoViewController alloc] initWithNibName:nil bundle:nil];
    self.view = infoView.view;
    [infoView release];


然后在验证登录名之后:

    CGRect pagingScrollViewFrame = [self frameForPagingScrollView];
    pagingScrollView = [[UIScrollView alloc] initWithFrame:pagingScrollViewFrame];
    pagingScrollView.pagingEnabled = YES;
    pagingScrollView.backgroundColor = [UIColor blackColor];
    pagingScrollView.showsVerticalScrollIndicator = NO;
    pagingScrollView.showsHorizontalScrollIndicator = NO;
    pagingScrollView.contentSize = [self contentSizeForPagingScrollView];
    pagingScrollView.delegate = self;
    self.view = pagingScrollView;
...


我不知道为什么在添加其他视图时会被向上推。

谢谢你的每一个回答

最佳答案

您能否过去方法- (CGRect) frameForPagingScrollView,如果没有该方法,则很难理解您的代码。

但是我想从该方法返回的self.view.frame和CGRect是不同的。
进一步的猜测是,差异不是10-15像素,而是20像素(对于UIStatusBar的高度),这可以在您的.xib文件中启用,但实际上不显示。

10-06 06:13