我正在将我的项目转移到iOS7.我面临一个与半透明导航栏有关的奇怪问题.

我有一个视图控制器,它有一个tableview作为子视图(我们称之为ControllerA).我使用controllerA初始化了一个新的uinavigationcontroller,并使用presentviewcontroller对其进行了模态演示.显示的视图控制器的表视图被导航栏阻止.我把automaticallyAdjustsScrollViewInsets设为YES,但结果没有改变.

表格视图被阻止

之后,我try 创建一个新的视图控制器进行测试.它包含几乎相同的元素.但结果却大不相同.表视图内容不会被阻止.

在此处输入图像描述

Conclusion

  1. 两个视图控制器的AutomaticallyAdjustsScrollViewInset设置为"是"
  2. 该项目没有使用故事板
  3. 第一个是在Xcode 4.6上创建的,第二个是在Xcode 5上新创建的
  4. 我比较了两个类xib和代码,差别不大

推荐答案

我在苹果开发者论坛上找到了答案.

The first one, the view controller added is a UITableViewController.

The second one, the view controller is NOT a UITableViewController.

在我的例子中,视图控制器是第二个.还有一个背景图像视图作为主视图的第一个子视图.所以,它失败了.

以下是Apple开发者论坛链接(需要开发者帐户才能访问):

Objective-c相关问答推荐

单例实例与类方法

iOS中的非延迟图像加载

将未知数量的行添加到静态单元UITableView

如何删除警告按钮的框架在运行时会有所不同.

如何在旋转时定义 CollectionView 的大小

UISearchDisplayController 没有结果tableView?

改变 RGB colored颜色 的色调

从日、月、年生成 NSDate

iOS 编译错误:CDVCommandDelegateImpl没有可见的@interface 声明 Select 器执行:

在Objective C中迭代枚举?

增加推送通知徽章 iPhone

在 ARC 中清零弱引用

如何在 XCode 中复制文件?

如何在情节提要场景中嵌入自定义视图 xib?

UICollectionView 仅在用户双击时调用 didSelectItemAtIndexPath,当用户单击时不会调用

Core Text在iOS中计算字母框架

在 DEBUG 模式下启用和禁用 NSLog

选中时选中的 UItableViewCell 保持蓝色

协议和代表之间的区别?

如何检测父视图控制器中模态视图控制器的解除?