Gab*_*abe 5 iphone statusbar ios uistatusbar
开发iPhone应用程序.
我有一个非常奇怪的问题,每隔一段时间,应用程序屏幕顶部的状态栏就会变成黑色.不像状态栏的黑色版本,而是像没有文字/图标的纯黑色矩形.这是非常罕见的,但通常似乎是在通过多任务或从锁定的设备(应用程序已在后台运行)返回应用程序后发生的.我已经看到它出现在3GS和iPhone4上.这是一个截图:

在尝试时我永远无法重现它,它似乎最终会在某个时刻发生(有时它会持续数天而不会发生).
一旦它确实发生,应用似乎继续正常运行,即使状态栏消失,除了我在应用程序中执行一个特定操作,这将导致一切都突然冻结(应用程序不会崩溃,但屏幕上的所有内容都是冻结的和非交互式的).在没有详细解释设计的情况下,导致其冻结的特定操作(在错误出现之后)在后台执行简单的上传到SQL数据库.一旦出现黑色状态栏,重置应用程序是解决问题的唯一方法.
有没有其他人经历过这个?我无法在任何地方找到解释类似行为的单一线程,这让我疯狂.
屏幕截图丢失了,但是您所描述的听起来好像您错误地实现了 Apple 内置视图控制器的使用。
如果UINavigationController 和 UITabBarController检测到此时屏幕上“应该”有状态栏,它们都会自动将其中的所有内容向下移动 20 像素。
我的猜测是,你有一些代码正在删除状态栏,但在苹果代码已经检测到它并将所有内容向下移动以适应之后,它就会启动。
“修复”是非常仔细地重新阅读有关 Apple 类的文档,并按照 Apple 的指示使用它们(通常,人们以看似合理的方式使用它们 - 例如将它们嵌入到其他视图中 - 但 Apple 明确声明不支持它们。遗憾的是,Apple 的这些类非常脆弱)
| 归档时间: |
|
| 查看次数: |
2485 次 |
| 最近记录: |