我的问题是:首页的view 整体往上偏了 20像素,这个该怎么搞定?

程序启动 开机引导介绍 setStatusBarHidden = yes;介绍结束之后 setStatusBarHidden = no; 

holdtom
浏览 204回答 3
3回答

墨色风雨

没有太看明白你的意思。首先statusBar的高度就是20像素,如果你setStatusBarHidden=YES了,那么所有的View自然都会上移20像素,整个window的bounds就变成320*480了,而非普通带statusBar的320*480,这时候你所有的界面都要展昭320*480来设计。如果你遇到的是,首页View的y坐标从屏幕外-20开始这种情况,那么应该是在statusbar的隐藏过程中window和view的坐标系出现了混乱,我实验没有重现这种情况,但以前遇到过,解决方案是 手动的重设window和view的frame另外,我建议:如果你要隐藏statusBar那么应用的生命周期就一直隐藏,直接在plist里设置,不要用代码控制一会儿有一会儿没有。

慕后森

偏移的视图控制器是vc的话:显示statusBar同时将偏移设回去setStatusBarHidden = YES; CGRect frame = vc.view.frame; frame.origin.y += 20; vc.view.frame = frame;

侃侃尔雅

[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleBlackTranslucent animated:YES];navigationbar statusbar tabbar toolbar等,设置translucent属性为yes,就可以把这些对象占用的frame给消除掉。如果想手动只有自己在hidden的时候设置frame。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

iOS