【问题标题】:How to add a bar on top of the iphone screen (below status bar)?如何在 iphone 屏幕顶部(状态栏下方)添加一个栏?
【发布时间】:2011-08-17 05:12:23
【问题描述】:

有人可以告诉我如何实现“触摸返回通话”类型的 UI,如下面的屏幕截图所示?

我的目的是在我的应用程序收到通知时在顶部显示栏。

任何有关这方面的指南或资源将不胜感激

【问题讨论】:

  • @Evgeniy Shuarkov 感谢您的链接。你碰巧知道我如何将导航栏推到覆盖层下方吗?现在覆盖将覆盖我的导航栏
  • 我想我误解了你的问题。我添加了一些变体的答案,希望这会有所帮助。

标签: objective-c ios notifications


【解决方案1】:

您可以通过多种方式在状态栏下方放置内容。
1.您可以将UIView添加到UIWindow并将其定位在状态栏下方。将状态栏样式设置为黑色半透明,这样下面的视图就会可见。适当调整 rootViewController 的大小,使其不会与您的视图重叠。
2. 另外,您可以将rootViewController 的wantsFullScreenLayout 属性设置为true,这样它将覆盖整个屏幕并管理其中的视图层次结构。您还需要将状态栏样式设置为黑色半透明。

或者,您可以在状态栏上方添加视图,但我认为这不是一个好的用户体验。您可以这样做:Add UIView Above All Other Views, Including StatusBar

【讨论】:

  • Shuarkov,我希望我的新视图位于状态栏和导航栏之间。添加的新视图将与导航栏重叠。调整根视图控制器(在我的例子中是一个表)的大小对调整导航栏的位置没有任何作用,导致我最初问题中的屏幕截图
  • 你的 rootViewController 是 UINavigationController(它的父视图是 UIWindow)。您的带有 tableView 的控制器只是导航堆栈中的顶级控制器。
  • 如何调整 UINavigationController 的大小?我正在尝试使用“keyWindow.rootViewController.view.frame”设置框架,但没有任何反应......
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-02-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多