zoukankan      html  css  js  c++  java
  • iOS7 StatusBar 使用小结

    iOS7 中的StatusBar和之前版本的相比发生了很大变化,在iOS7下对statusbar的使用需要全新的方法,现在就总结以下statusbar的方法:

    • 样式
    • 显示和隐藏
    • 动画效果
    • 默认无StatusBar

    1. 样式

    StatusBar有两种样式:

     

    •  UIStatusBarStyleDefault :

     

    • UIStatusBarStyleLightContent

     

    要改变StatusBar的显示样式需要在UIViewController中重载:

    1
    2
    3
    4
    - (UIStatusBarStyle)preferredStatusBarStyle
    {
        return UIStatusBarStyleLightContent;
    }



    这个方法不能直接调用,在需要改变样式的地方调用:[self setNeedsStatusBarAppearanceUpdate]

    示例:

    1
    2
    3
    4
    - (void)viewWillAppear:(BOOL)animated
    {
        [self setNeedsStatusBarAppearanceUpdate];
    }



    2. 显示和隐藏

    显示和隐藏StatusBar只要在UIViewController中重载:

     

    1
    2
    3
    4
    - (BOOL)prefersStatusBarHidden
    {
        return YES;
    }



    同样式改变一样需要调用 [self setNeedsStatusBarAppearanceUpdate] 方法

    3. 动画效果

    现在有两种动画效果:UIStatusBarAnimationFade ,UIStatusBarAnimationSlide.从他们的名字可以得知他的具体是什么眼的效果。 实现动画需要重载:

    1
    2
    3
    4
    - (UIStatusBarAnimation )preferredStatusBarUpdateAnimation
    {
        return UIStatusBarAnimationSlide;
    }



    但是重载这个方法后,并没有动画效果。这时,我们需要把 [self setNeedsStatusBarAppearanceUpdate] 放在动画block中执行:

     

    1
    2
    3
    4
    [UIView animateWithDuration:0.3
                     animations:^{
                        [self setNeedsStatusBarAppearanceUpdate];
    }];



    这样动画效果就出现了。

    4. 默认无StatusBar

    有一些应用默认就没有Statusbar如:

    这样的应用很丑,总感觉缺点什么,但是有些产品经理就是喜欢。

    要实现这种效果,最需要在项目配置plist文件总将Status bar is initially hidden 字段设置为 YES, 添加View controller-based status bar appearance 字段, 并将值设置为 NO:

    其他

    有一些体统提供的组建,如 发送邮件MFMailComposeViewController,无法更改Statabar样式,就是使用它的子类都无法实现,如果有朋友知道如何实现,一定要告诉小弟, 不胜感激

  • 相关阅读:
    C语言|博客作业02
    少走弯路的十条忠告
    怎么算是优秀的程序员写给工作2,3年了的同行
    .NET世界的M型化原文作者奚江华
    工作以后十不要 减少奋斗30年
    <转>[创业经验]程序员创业:我的软件推广成功之路
    一个程序员的C#命名规则<转>
    推荐奚江华著《圣殿祭祀ASP.NET 3.5 专家技术手册 C#篇及他的TW博客进入方法》
    C#算法
    使用 DataFormatString 属性来提供列中各项的自定义格式
  • 原文地址:https://www.cnblogs.com/Free-Thinker/p/5123857.html
Copyright © 2011-2022 走看看