【发布时间】:2010-09-30 00:11:14
【问题描述】:
当我尝试隐藏状态栏时出现这条蓝线,我在我的 RootViewController 的 touchesBegan 方法中使用以下行
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];
【问题讨论】:
当我尝试隐藏状态栏时出现这条蓝线,我在我的 RootViewController 的 touchesBegan 方法中使用以下行
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];
【问题讨论】:
这很简单。忘记编码它。刚开始就做对,这使它更简单,更不混乱。我一直为我创建的每个应用程序都这样做。
在 xcode 中进入您的项目,然后在 Groups and Files 部分找到一个名为 yourapplicationname-info.plist 的文件。
双击它会打开一个框。它以表格的形式包含文件的属性。单击最后一行一次,使最后一行以蓝色突出显示。单击右端的加号箭头。这将添加一个新行。出现一个列表,向下滚动到状态栏最初是隐藏的,然后单击 Enter 将其选中。然后名称旁边会出现一个空框。勾选该框并单击 CDM+S 以保存 plist。关闭盒子并回到xcode。现在在你试图隐藏状态栏的地方去掉你的代码。
然后单击视图,.xib 文件并用鼠标单击实际视图,使其成为焦点(我们当前正在查看的窗口)。然后点击 cmd+3 打开属性部分。它说状态栏选择选项并选择未指定。现在这将摆脱 uiview 上的状态栏。选择该选项后可能发生的情况是将实际视图的大小减小 20 像素。那就是状态栏的高度。您要做的是重新调整视图以弥补缺少的状态栏。因此,尽管我们仍然关注该观点。点击 cmd+3 这将打开视图大小。将 H(高度)从 300 更改为 320。这将通过添加我们通过删除状态栏而丢失的 20 个像素来重新调整屏幕。然后保存并关闭界面生成器,就完成了。
希望这会有所帮助 让我知道是否有。谢谢
PK
【讨论】:
如果您的视图控制器嵌入在导航控制器中:
[CODE]self.navigationController.navigationBar.frame = CGRectOffset(self.navigationController.navigationBar.frame, 0.0, -20.0);[/CODE]
把它放在你的应用看到的第一个视图控制器上的视图中确实加载方法。终于解决了这个令人沮丧的问题!!!!!!
【讨论】:
看来您必须调整视图以占用状态栏以前占用的空间。您可以在 Interface Builder 中使用 springs 和 struts 来执行此操作,或者您可以在调用 setStatusBar: withAnimation: 之前或之后调整视图的框架。
【讨论】:
k 那么你必须在 appdelegate 类中做
[application setStatusBarHidden:YES withAnimation:UIStatusBarAnimationNone];
它对我来说很好......希望这会对你有所帮助≥
【讨论】: