相关疑难解决方法(0)

容器视图被推下来好像它有一个UINavigationBar?

我有一个带容器视图的UIViewController.此Container视图包含UITableViewController.

UIViewController嵌入在UINavigationController中.我通过改变色调颜色,条纹色调和标题文本属性来配置NavigationBar,但是当我尝试更改半透明时,我遇到了问题.我通过删除所有其他自定义代码来挑出问题.每当我在UIViewController中执行此操作时-viewDidLoad:

self.navigationController.navigationBar.translucent = NO;

容器视图在其顶部添加了一些空间,就好像它有自己的导航栏一样.每当我将半透明设置为YES时,视图都会正确显示所有内容.只有在我将半透明设置为NO时才会在包含的视图中发生这种情况.

这里有什么我想念的吗?

我尝试将半透明度设置为YES包含的视图,并将其设置为隐藏,但没有任何效果.不知何故,包含的视图从父容器继承属性?每当我将半透明度设置为NO?时,如何避免在包含的视图上创建这个额外空间?

我希望设置半透明度只会影响半透明度,但不会影响视图的位置.

半透明= YES时

+---------------------------------+
|                                 |
|     UINavigationBar             |
|                                 |
+---------------------------------+
|                                 |
|                                 |
|                                 |
|                                 |
|                                 |
|    UITableViewController        |
|    in a Contained View          |
|                                 |
|                                 |
|                                 |
|                                 |
|                                 |
|                                 |
+---------------------------------+
Run Code Online (Sandbox Code Playgroud)

当半透明=否

+---------------------------------+
|                                 |
|     UINavigationBar             |
|                                 |
+---------------------------------+
|                                 |
|blank space created on top of view
|                                 |
+---------------------------------+ …
Run Code Online (Sandbox Code Playgroud)

objective-c uiviewcontroller uikit ios ios7

45
推荐指数
3
解决办法
2万
查看次数

标签 统计

ios ×1

ios7 ×1

objective-c ×1

uikit ×1

uiviewcontroller ×1