【问题标题】:UIImagePickerController hiding status bar iOS 8UIImagePickerController 隐藏状态栏 iOS 8
【发布时间】:2015-04-21 05:36:39
【问题描述】:

我希望在我的应用中隐藏状态栏。在我的 pList 中,我设置了: 状态栏最初是隐藏的 - 是 查看基于控制器的状态栏外观 - 否

在我展示 UIImagePickerController 之前,这可以正常工作。它想显示状态栏。因此,在导航控制器委托的 willShowViewController 中,我调用 [[UIApplication sharedApplication] setStatusBarHidden:YES]。这实际上隐藏了状态栏,但是在 navigationController 中有一个像动画一样的移动。我花了一些时间试图停止这个动画。任何人有任何想法如何阻止它?谢谢。

【问题讨论】:

    标签: ios objective-c


    【解决方案1】:

    试试看

     [[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone];
    

    【讨论】:

      【解决方案2】:

      继承UIImagePickerController并定义prefersStatusBarHidden方法,如果要隐藏状态栏,返回YES。

      【讨论】:

      • 我试过它仍然可以动画。顺便说一句,对于所有建议在子类、类别和 uiviewcontrollers 中使用 prefersStatusBarHidden 的人来说,这只会被称为基于视图控制器的状态栏外观设置为 YES。否则它永远不会被调用。
      • 有道理。从 viewWillAppear 或 viewDidAppear 调用 setStatusBarHidden: 怎么样?
      • 我假设您指的是 UIImagePickerController 所在的 UIViewController。我试过它仍然闪烁。我已经尝试对 UIImagePickerController 进行子类化并将其放入 iewWillAppear 和 viewDidAppear 中。仍然闪烁。我认为这是 iOS 8 中的一个错误。我已经提交了一个 Radar 错误。到目前为止,Apple 没有回应。
      【解决方案3】:

      事实证明,这是 iOS 8 中的一个错误。我提交了一个雷达错误,Apple 建议我尝试 beta 8.3。在测试版中,我不再看到动画。

      【讨论】:

        猜你喜欢
        • 2014-11-14
        • 1970-01-01
        • 2017-03-20
        • 2015-02-08
        • 1970-01-01
        • 2014-11-14
        • 1970-01-01
        • 1970-01-01
        • 2014-11-26
        相关资源
        最近更新 更多