ios – UINavigationController栏涵盖了uiview控制器的内容

ios – UINavigationController栏涵盖了uiview控制器的内容,第1张

概述我有一个UIViewController,MyViewController,顶部有一个UIToolbar.使用界面构建器,文档大纲如下所示: View - subview1 - subview2 - UIToolbar - Bar Button Item1 - Bar Button Item2 - Bar Button Item3 MyViewContr 我有一个UIVIEwController,MyVIEwController,顶部有一个UIToolbar.使用界面构建器,文档大纲如下所示:
VIEw   - subvIEw1  - subvIEw2  - UIToolbar     - bar button Item1     - bar button Item2     - bar button Item3

MyVIEwController在我的应用程序中使用有时它是在一个UINavigationController,其他时候它在一个UIPopoverVIEw.

当它出现在UINavigationController中时,导航栏会覆盖UIToolbar以及VIEw顶部附近的所有其他内容.在this screenshot,你可以看到UIToolbar被完全遮盖,UIbutton有一个绿色灯泡的图像被部分覆盖.

根据apple documentation

Any vIEw that needs to be anchored to the top and just below the status bar (i.e. UIToolbar,UIbutton,etc.) requires additional work for proper placement.

它继续给出一个解决方案,只需使用约束将VC的内容移动x像素,在我的情况下,UIToolbar.这似乎不是一个很好的解决方案,因为它假定您始终希望内容向下移动到导航栏下方.在我的情况下,我显然不是因为MyVIEwController并不总是在一个UINavigationController.当我使用这些文档中提供的约束解决方案时,UIToolbar在MyVIEwController不在UINavigationController的所有情况下从顶部奇异地浮动x像素未锁定.

我是否想要在UINavigationController中显示VC的内容吗?非常感谢.

解决方法 在iOS7中,UINavigationbar具有半透明的属性.通过这个,UINavigationVIEwController的子VC的视图默认在UINavigationbar下.

如果您不需要获得半透明效果,请使用以下代码关闭此属性.

self.navigationController.navigationbar.translucent = NO

您也可以使用@ ldindu的方法来实现您的需要.

总结

以上是内存溢出为你收集整理的ios – UINavigationController栏涵盖了uiview控制器的内容全部内容,希望文章能够帮你解决ios – UINavigationController栏涵盖了uiview控制器的内容所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1111121.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存