问题标签 [ios7-statusbar]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
694 浏览

ios - iOS 7 Status bar issues on Landscape mode

I have a signature screen in my application that is suppose to show in Landscape, but the iPhone status bar displays in Portrait mode. How to get the Status bar to show in Landscape mode instead of portrait mode? I tried setting the Landscape orientation to status bar in ViewDidLoad, but no luck..

I use presentViewController to push screen,

enter image description here

Please find the below snippet of code to push the screen to Landscape mode.

Any help is greatly appreciated!

Thanks, Ramesh

0 投票
1 回答
141 浏览

ios - 如何安排状态栏始终位于顶部?

我确定这是一个快速修复或有一些设置,但由于某种原因,我无法在任何地方找到答案。

我在屏幕上的 UIImageView 始终排列在状态栏上方,即使我将其发送到后面,如图所示。

在此处输入图像描述

如何始终将状态栏保持在顶部?我将通过顶部边缘将图像从屏幕上向上滑动,因此我希望它们保持在栏下方。

这是我的一些代码,我在其中生成图像并将其移出屏幕顶部:

0 投票
2 回答
494 浏览

ios7 - iOS7中的StatusBar背景颜色

我正在开发一个从 ios6 开始兼容的应用程序。在 iOS 7 状态栏是重叠的视图和导航栏。我想要 iOS 6 风格的状态栏。就像它应该出现在所有 UI 对象、视图、视图控制器和导航控制器之上。我们怎样才能做到这一点?

0 投票
2 回答
570 浏览

ios - 在 iOS 7 中隐藏状态栏而不清除空间?

在不完全擦除空间的情况下隐藏iOS 7中的状态栏是否可行?我想创建我的应用程序的启动图像,并且只想创建带有导航栏和标签栏的空图像,并隐藏状态栏。但是,当我在 .plist 文件中写出以下值以隐藏状态栏时,

,状态栏被隐藏,但导航栏被“推出”到屏幕顶部,因此顶部重叠的灰色表现在是 44 px,而不是 64 px (44 + 20)。

我也尝试更改导航栏的高度,但发现无法修改,强烈建议始终使用 Apple 有开发人员使用的默认值。

那么我该如何解决这个问题呢?

0 投票
0 回答
3212 浏览

ios7 - iOS 7:使用 UINavigationController 作为子视图控制器的自定义容器视图控制器

我想编写一个自定义的全屏容器视图控制器,目的是将 UINavigationController 作为子视图控制器放入其中。UINavigationController 的视图将填满容器视图控制器的视图,因此它看起来就像 UINavigationController 是根视图控制器。(比如说,创建由 Facebook 普及的滑动侧边栏菜单 UI。)

我所做的工作除了在呈现另一个视图控制器时出现故障,当 iPhone 处于横向时隐藏状态栏。通常,导航栏在状态栏消失时向上滑动,在再次出现时向下滑动。相反,导航栏在它应该向上滑动时停留在原位,当它应该向下滑动时,它首先与状态栏重叠定位,然后跳转到状态栏下方的正确位置。基本上,我试图让 UINavigationController 的行为与它不在自定义容器视图控制器内时一样。

下面是一些您可以运行以查看问题的代码,但如果您不想这样做,只需查看ContainerViewController类,它实现了一个最小的自定义容器视图控制器。导致此问题的自定义容器视图控制器中缺少什么?当我使用 UITabBarController 作为容器视图控制器时它可以工作,所以看起来我只是在我的实现中遗漏了一些东西。

如果您愿意,可以阅读以下更多内容

如果您想运行示例代码来查看问题,这里有一个概述。AppDelegate中定义了一个名为MODE的预处理器定义,以三种方式有条件地编译应用程序。

  • MODE == 1时,ViewController位于 UINavigationController 中。然后您可以按“Present”按钮来展示ViewControllerWithStatusBarHidden,然后您可以按“Dismiss”按钮来关闭此视图控制器。应用程序的这种模式显示了我正在寻找的行为。

  • MODE == 2时,除了 UINavigationController 位于ContainerViewController内部之外,我们与MODE == 1中的情况相同。该应用程序的这种模式显示了我目前的不良行为。

  • MODE == 3时,除了 UINavigationController 位于 UITabBarController 内部之外,我们与MODE == 1中的情况相同。该应用程序的这种模式表明可以获得我正在寻找的行为。

同样,要查看问题,只需在 iPhone 处于横向时按“呈现”按钮,然后按“关闭”按钮。

代码

四类:

  1. 容器视图控制器
  2. 应用委托
  3. 视图控制器
  4. ViewControllerWithStatusBarHidden

ContainerViewController.h

容器视图控制器.m

AppDelegate.h

AppDelegate.m

视图控制器.h

视图控制器.m

ViewControllerWithStatusBarHidden.h

ViewControllerWithStatusBarHidden.m

0 投票
1 回答
440 浏览

ios - 当 App 重新进入前台时,iOS7 StatusBarHidden 会损坏 ScrollView

我的应用程序有一个相机部分,它是一个模态呈现的 UINavigationController,它包含一个基于 AVFoundation 的 CameraView,因为它是 rootViewController。用户可以按如下方式浏览他的照片库: 推送一个 ViewController (->Master),它在 TableView 中显示所有 AssetGroup。当用户选择一个组时,会推送另一个 ViewController,在 CollectionView 中显示该组中的所有资产。为了屏幕空间和“风格”,我决定在显示 CameraSection 时隐藏状态栏(使用setStatusBarHidden:withAnimation:)这使 NavigationController 的 NavigationBar 向上滑动 20px(StatusBar 高度)。

当我为资产浏览显示 TableView / CollectionView 时,我会考虑到这一点并为它们适当地设置 conentInset 等。

这一切都很好,直到应用程序被发送到后台(主页 - 按钮),同时显示 TableView 或 CollectionView。(现在将其称为“ScrollView”)

当应用程序重新进入前台时,“ScrollView”在很短的时间内处于正确状态,然后它的框架向下偏移 44px。(44px = 导航栏的实际大小 - 没有状态栏)。

下面是一些图片来说明问题:

进入后台之前(主页按钮): 进入后台前

重新进入前台后: 在此处输入图像描述

仔细看,可以看到navigationBar底部边缘的黑色细线。在第一张图片中,一切都对齐得恰到好处。然而,在第二个中,scrollView 似乎有一个向下偏移 44px 的框架。

当 collectionView 的 contentSize 大于“Screen-Height”(开始可滚动)时,您还可以看到底部边缘太低(例如最后一行不完全可见 + scrollIndicator-inset 也是错误的)。

我已经尝试注册类似UIApplicationDidBecomeActiveNotificationor的通知UIApplicationDidChangeStatusBarFrameNotification,并在回调中重新设置 collectionView 的 contentInset 和框架。观察collectionView框架的Key-Value从不回调,就像KVO viewController的“topLayoutGuide”一样。

似乎框架在没有触发任何通知或事件的情况下悄然改变。奇怪的是,当我在重新输入之前和之后 NSLog 集合视图的框架和 contentInset 时,它们显示的值完全相同!?

我根本没有使用 InterfaceBuilder,所以一切都在代码中完成(没有 AutoLayout)。

我非常感谢有关此问题的任何帮助。

现在,恐怕我不得不满足于编写自定义导航栏并隐藏导航控制器来解决这个问题:/

  • 我注意到的另一个问题:当您隐藏状态栏时,scrollView 的“scrollToTop”机制不再起作用。我想点击必须在状态栏上才能开始滚动,所以在隐藏状态栏的同时让它工作,一个 TapGestureRecog 是必要的吗?

编辑

仅供参考,我使用的每个 ViewController 都继承自设置automagicallyAdjustScrollViewInset为 NO 的基类。

0 投票
3 回答
117 浏览

objective-c - IOS7如何在UIStatusBar上隐藏时钟(时间)

有没有办法从 UIStatusBar 隐藏时钟(时间)?没有时钟的状态栏

0 投票
1 回答
163 浏览

ios - 无法在 iOS 7.1 中取消隐藏状态栏

我看到人们在 iOS 7.1 中隐藏状态栏时遇到问题,但我遇到了相反的问题。隐藏后我无法取消隐藏。:)

这段代码在 iOS 7 和 7.1 上都可以正常工作。它将隐藏状态栏并显示图像选择器。

但是,应该恢复状态栏的部分在 iOS 7.1 中不再起作用:

此代码将关闭图像选择器,但状态栏将保持隐藏状态。

任何想法如何解决这个问题?

0 投票
3 回答
434 浏览

ios - iOS 7 状态栏与使用 ViewController 的 NavigationBar 发生冲突

我是iOS开发的初学者。目前我已将 ios5 代码迁移到 ios7。

在我的代码中出现以下重叠问题:http: //s17.postimg.org/90m7mx5lb/collide.png

我已使用以下代码更新了应用程序委托:

界面等直接通过 ViewController 代码生成,而不是使用 Interface Builder 或 StoryBuilder。

请指教..

更新:

在所有视图控制器中使用以下内容

UIImage *stretchImage=[UIImage imageNamed:kNavigationBg]; stretchImage=[stretchImage stretchableImageWithLeftCapWidth:1 topCapHeight:0]; [self.navigationController.navigationBar setBackgroundImage:stretchImage forBarMetrics:UIBarMetricsDefault];

0 投票
1 回答
130 浏览

ios - iOS中的褪色状态栏?

在 Facebook 的新应用 Facebook Paper 中,有一个稍微淡出的状态栏(文字有些淡出)。我尝试了几种不同的方法,但都没有奏效。关于如何复制这个的任何想法?下面是一个屏幕截图:

http://i.imgur.com/VXoqyme.jpg?1