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

标签 iphone ios uinavigationcontroller width uinavigationbar

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

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

如何缩小我的 navController 以便在主视图后面钻取 View ?是否可以?到目前为止我所尝试的一切都只是使导航栏全屏。

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

enter image description here

正如您所看到的,文本超出了屏幕,您看不到它的结尾。如果稍微切换一下壁架,您可以看到后 View 导航栏一直延伸到边缘。

最佳答案

可以创建一个小于其所包含 View 宽度的 UINavigationController。我快速浏览了您正在使用的库,似乎每个 subview 的框架都设置为窗口的大小,向左或向右偏移一定量(请参阅 referenceBoundscenterViewBoundssideViewBounds)

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

关于iphone - 如何制作宽度不是全屏的 UINavigationController?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15847361/

相关文章:

iphone - iOS 5.0 AVAudioPlayer 加载音频剪辑时出错 : The operation couldn’t be completed.(OSStatus 错误 -50。)

ios - 从 APP Store 上的应用程序中检索代码

ios - 如何禁用 UINavigationBar 上的向右滑动手势?

ios - 在 iPad 上查看时,应用程序未以 iPhone 分辨率运行

iPhone 电子邮件应用程序启动 URL

iphone - 在 iPhone 的后台启动应用程序

iphone - NSXMLParser 和针对 iOS 上的 DTD 的验证

ios - UITableViewCell 滚动后数据发生变化

uinavigationcontroller - 重复调用UINavigationController 的push 导致访问错误

ios - 在 viewDidAppear 中推送 View Controller 不起作用