程序启动 开机引导介绍 setStatusBarHidden = yes;介绍结束之后 setStatusBarHidden = no;
3 回答
墨色风雨
TA贡献1853条经验 获得超6个赞
没有太看明白你的意思。
首先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里设置,不要用代码控制一会儿有一会儿没有。
慕后森
TA贡献1802条经验 获得超5个赞
偏移的视图控制器是vc的话:
显示statusBar同时将偏移设回去
setStatusBarHidden = YES; CGRect frame = vc.view.frame; frame.origin.y += 20; vc.view.frame = frame;
侃侃尔雅
TA贡献1801条经验 获得超16个赞
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleBlackTranslucent animated:YES];
navigationbar statusbar tabbar toolbar等,设置translucent属性为yes,就可以把这些对象占用的frame给消除掉。
如果想手动只有自己在hidden的时候设置frame。
- 3 回答
- 0 关注
- 188 浏览
添加回答
举报
0/150
提交
取消