如何制作宽度不全屏的UINavigationController?

时间:2013-04-06 05:27:03

标签: iphone ios uinavigationcontroller width uinavigationbar

我正在尝试实现Facebook风格的幕后菜单导航模式(使用viewDeck),我无法使主视图后面的navigationController比宽度宽度更宽屏幕。

由于主视图中仍有一些叠加,我需要我的navController只有276点宽。这意味着navController的右侧将与部分可见的主viewController的窗口齐平。

如何缩小我的navController以便在主视图后面钻取视图?可能吗?到目前为止,我所尝试的一切只是使navigationBar全屏。

编辑1:使用PKRevealController进行测试:

enter image description here

正如您所看到的,文本在屏幕上显示,您无法看到它的结尾。如果您稍微切换壁架,您可以看到后视图导航栏一直到边缘。

2 个答案:

答案 0 :(得分:1)

如果您想重新实现Facebook应用的行为,您可能需要节省一些时间并查看以下项目之一:

答案 1 :(得分:1)

可以创建一个小于其所包含视图宽度的UINavigationController。我快速浏览了您正在使用的库,看起来每个子视图的框架都设置为窗口的大小,向左或向右偏移一些量(参见referenceBounds的函数,{ {1}}和centerViewBounds

要将导航控制器更改为完全可见,您需要更改它以使原点相同且宽度为276.0f,因此我认为您需要修改sideViewBounds方法以返回稍小的CGRect