【发布时间】:2023-03-25 02:35:02
【问题描述】:
我有一个 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 被部分覆盖。
任何需要锚定到顶部和状态栏正下方的视图(即 UIToolbar、UIButton 等)都需要额外的工作才能正确放置。
它继续提供一个解决方案,该解决方案仅使用约束将 VC 的内容向下移动 x 像素,在我的例子中是 UIToolbar。这似乎不是一个好的解决方案,因为它假定您总是希望内容向下移动到导航栏下方。就我而言,我显然不这样做,因为 MyViewController 并不总是在 UINavigationController 中。当我使用这些文档中提供的约束解决方案时,在 MyViewController 不在 UINavigationController 中的所有情况下,UIToolbar 都会奇怪地从顶部向下浮动 x 个像素。
我是否遗漏了我应该如何在 UINavigationController 中显示 VC 的内容?非常感谢。
【问题讨论】:
-
你能不能给一些代码
-
@ipinak 我添加了文档大纲详细信息和屏幕截图,但是除了 [navcntrl push:MyViewController] 之类的内容之外,这里实际上没有任何代码可以显示。这一切都在界面生成器中工作。如果我能提供更多有用的信息,请告诉我。谢谢,
-
你在哪个 iOS 版本上运行?
标签: ios uiviewcontroller uinavigationcontroller uitoolbar nslayoutconstraint