0

很多人问关于视图跳跃 20px 的问题,但仍然不清楚为什么会发生,很多人说要设置CGRect调整这个问题,但这不是一个合适的解决方案。

这是我的情况,我所做的是:

在我的 ViewController.xib 文件中,我拖放了另一个UIView并在 ViewComreoller.h 文件中创建了它@property (strong, nonatomic) IBOutlet UIView *settingsView;

在 ViewController.m 文件中

- (IBAction)settings:(id)sender {

    [UIView transitionFromView:[self view] toView:[self settingsView] duration:1.0 options:UIViewAnimationOptionTransitionCrossDissolve completion:^(BOOL finished) {}];
}

- (IBAction)back:(id)sender {

    [UIView transitionFromView:[self settingsView] toView:[self view] duration:1.0 options:UIViewAnimationOptionTransitionCrossDissolve completion:^(BOOL finished) {}];
}

就这样。

settingsView它出现时,它向上跳了 20px。

两个视图的宽度和高度相同,而我所做的一切transitionFromView:,没有自定义代码,但仍然跳起来,为什么?

请就这个问题提供帮助并清除我的概念,为什么会发生这种情况?

4

1 回答 1

0

检查您的状态栏是否还在?20px 可能是顶部状态栏的问题。

有可能在 xib 中您启用了状态栏,而在项目中您可能不会显示状态栏。您可以通过编辑 info.plist 来完全避免状态栏。将带有键“状态栏最初隐藏”的行添加为 YES。

于 2013-04-22T06:02:30.457 回答