iOS开发(你不知道的小细节)之---状态栏
2014-08-06 11:00
246 查看
状态栏,UIStatusBar显示了基本的信息,如电量、运营商等。除非你的应用是全屏,否则他会显示在界面的最顶端,这个占用屏幕宽度高20个Point的状态栏到底有哪些特性呢?在iOS6和iOS7之后的版本又又哪些区别呢?
在iOS6下,如果statusBarStyle为UIStatusBarStyleDefault的话,则状态栏的颜色会自动随着导航栏的颜色变化而变化,其颜色为导航栏的平均颜色;如果修改StatusBarStyle为UIStatusBarStyleBlackOpaque或UIStatusBarStyleBlackTranslucent后就固定为不透明黑色和透明黑色,字体为白色,不再随导航栏变化了。
在iOS6下,状态栏占用单独的20个点得高度,所有视图控制器的View的坐标都是在之下开始算起的。
在iOS6下,statusBarStyle默认为UIStatusBarStyleDefault,背景色和文字颜色随着导航栏的变化而变化,如果没有导航栏则是黑底白字。
在iOS7下,statusBarStyle默认为UIStatusBarStyleDefault,但是它是透明背景色,而且它的文字颜色为黑字。
在iOS7下,状态栏不再有背景色,它是透明的背景色,他得背景色与离它最近的视图背景一致),而且它不再单独占用20个点的高度
在iOS7下,工程的info.plist配置文件中新增了一个属性View controller-based status bar appearance,默认是yes。(iOS6下此值不影响)它的意思说明,状态栏的背景色和文字颜色是基于视图控制器中视图的变化而变化的,所以当此值为NO时,设置UIApplication的statusBarStyle,statusBarHidden属性才有效果,当此值为yes时,重写UIViewController的如下两个方法来设置状态栏的背景色、字体颜色和隐藏属性:
[self setNeedsStatusBarAppearanceUpdate];//更新动画状态
- (UIStatusBarStyle)preferredStatusBarStyle{
returnUIStatusBarStyleLightContent;
}
- (BOOL)prefersStatusBarHidden{
return NO;
}
- (UIStatusBarAnimation)preferredStatusBarUpdateAnimation{
returnUIStatusBarAnimationNone;
}
在iOS6下,如果statusBarStyle为UIStatusBarStyleDefault的话,则状态栏的颜色会自动随着导航栏的颜色变化而变化,其颜色为导航栏的平均颜色;如果修改StatusBarStyle为UIStatusBarStyleBlackOpaque或UIStatusBarStyleBlackTranslucent后就固定为不透明黑色和透明黑色,字体为白色,不再随导航栏变化了。
在iOS6下,状态栏占用单独的20个点得高度,所有视图控制器的View的坐标都是在之下开始算起的。
在iOS6下,statusBarStyle默认为UIStatusBarStyleDefault,背景色和文字颜色随着导航栏的变化而变化,如果没有导航栏则是黑底白字。
在iOS7下,statusBarStyle默认为UIStatusBarStyleDefault,但是它是透明背景色,而且它的文字颜色为黑字。
在iOS7下,状态栏不再有背景色,它是透明的背景色,他得背景色与离它最近的视图背景一致),而且它不再单独占用20个点的高度
在iOS7下,工程的info.plist配置文件中新增了一个属性View controller-based status bar appearance,默认是yes。(iOS6下此值不影响)它的意思说明,状态栏的背景色和文字颜色是基于视图控制器中视图的变化而变化的,所以当此值为NO时,设置UIApplication的statusBarStyle,statusBarHidden属性才有效果,当此值为yes时,重写UIViewController的如下两个方法来设置状态栏的背景色、字体颜色和隐藏属性:
[self setNeedsStatusBarAppearanceUpdate];//更新动画状态
- (UIStatusBarStyle)preferredStatusBarStyle{
returnUIStatusBarStyleLightContent;
}
- (BOOL)prefersStatusBarHidden{
return NO;
}
- (UIStatusBarAnimation)preferredStatusBarUpdateAnimation{
returnUIStatusBarAnimationNone;
}
相关文章推荐
- iOS开发(你不知道的小细节)之---导航栏
- 操纵状态栏-IOS开发
- iOS开发:不显示状态栏
- iOS应用安全开发,你不知道的那些事
- iOS开发之iOS7设置状态栏字体颜色
- 【iOS开发】iOS7 兼容及部分细节
- 操纵状态栏-IOS开发
- iOS开发之iOS7设置状态栏字体颜色
- IOS开发——IOS7 状态栏颜色更改
- iOS开发中需要注意的一些小细节
- VMWare 7 安装Mac OS X 10.6 搭建IOS开发环境遇到的细节问题
- 【iOS开发】iOS7 兼容及部分细节
- ios实例开发细节与精品代码推荐
- IOS开发隐藏状态栏(电池栏)
- iOS之开发细节经验
- 不知道大家知道不知道,iOS开发,web页面的链接的active属性无效,但是今天发现一个hack办法可以让Css的active有效
- IOS开发之细节知识点汇总
- ios开发笔记--状态栏的自定义,隐藏
- IOS 开发的一些细节(持续更新)
- ios开发总结(行高。tableviewcell禁止重用。隐藏状态栏。itms-services)