![]() |
1
13
我最近遇到了这个问题。在我的例子中,这是因为我正在执行导航控制器的旋转,而导航控制器不是应用程序窗口的根控制器。因此,我使用旋转通知侦听器/仿射变换/边界调整方法来更改导航控制器的布局。这一切正常,但产生了这里描述的结果。我花了一段时间才注意到,当我旋转到横向时,导航栏的高度没有正确调整大小(即,从44像素到32像素,横向模式下框架的降低高度)。我的应用程序的根视图控制器 是 响应 willRotateToInterfaceOrientation 双旋转面间定向 willRotateToInterfaceOrientation
希望这能在类似情况下节省一些时间。 |
![]() |
2
7
当使用自定义视图控制器作为根控制器(它管理其他视图控制器本身)时,它负责将所有旋转事件转发到当前活动的子控制器(如果我可以这样称呼它的话)。这些活动包括:
因此,对于由自定义根控制器管理的导航控制器,转发
|
![]() |
3
6
在didRotateFromInterfaceOrientation方法中添加以下行。 [self.navigationController.view布局子视图]; 我希望这样就可以了。 |
|
4
2
我有完全相同的问题,@jstevenco让我找到了一个非常奇怪的解决方案。 “我的视图”也会在旋转时自动调整大小,但tableview似乎不知道那里有一个navigationcontroller: 在tableviewcontroller中,添加以下内容:
31.9和44.1非常重要!剩下的是32和44,不需要调整大小,所以它似乎忽略了它。为我工作,希望能帮助别人。 |
![]() |
5
0
我觉得在方向改变后,表格视图会向下滚动一点。
你打过电话吗
|
![]() |
6
0
你应该有这样的东西:
|
![]() |
7
0
在这些情况下,需要注意的一点是,如果手动更改状态栏,则状态栏的方向。如果状态栏未隐藏,并且在状态栏的方向错误时更改了视图的框架(在代码中,可能是在框架更改后更新了状态栏的方向),则即使未启用“自动调整大小”,它也会错误地自动调整导航栏的大小。 |
![]() |
8
0
你的
|
![]() |
sandpat · 使导航堆栈中只有一个导航栏透明iOS Swift 7 年前 |
![]() |
Witterquick · 刷新导航栏背景色 7 年前 |
|
user8902111 · 导航控制器按钮问题 7 年前 |
![]() |
COLD ICE · 使用彩色导航栏时,搜索栏中会出现白线 7 年前 |