博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
NavigationBar 和StatusBar同时消失出现
阅读量:6338 次
发布时间:2019-06-22

本文共 1451 字,大约阅读时间需要 4 分钟。

NavigationBar和StatusBar都有支持动画的系统接口:

[[UIApplication sharedApplication] setStatusBarHidden:hidden withAnimation:UIStatusBarAnimationSlide];[self.navigationController setNavigationBarHidden:hidden animated:animated];

但是简单这样写的话,效果不太好,NavigationBar 和StatusBar消失的时候,动画太快;出现的时候,StatusBar先出现,NavigationBar后滑出,而且动画比较突兀。

以下代码能让NavigationBar 和StatusBar同时消失出现,而且比较平滑 :

- (void)toggleStatusBarAndNavBar:(BOOL)hidden {    UINavigationBar *navBar = self.navigationController.navigationBar;    [[UIApplication sharedApplication] setStatusBarHidden:hidden withAnimation:UIStatusBarAnimationSlide];    [UIView animateWithDuration:0.35 delay:0 options:UIViewAnimationOptionCurveEaseOut animations:^{        // 先显示navigationBar        if (!hidden)        {            [self.navigationController setNavigationBarHidden:hidden animated:NO];        }        navBar.frame = CGRectMake(navBar.frame.origin.x,                                  hidden ? -navBar.frame.size.height : 20,                                  navBar.frame.size.width,                                  navBar.frame.size.height);    } completion:^(BOOL finished) {        if (hidden)        {            [self.navigationController setNavigationBarHidden:hidden animated:NO];        }    }];}
  • StatusBar的动画风格选滑入UIStatusBarAnimationSlide,手动为NavigationBar的滑出滑入做动画。
  • 动画风格选UIViewAnimationOptionCurveEaseOut,因为消失的时候StatusBar消失比较快,NavigationBar也需要快点消失;出现的时候NavigationBar需要慢点,动画看起来比较流畅
  • 要把握好hidden属性和frame的变化动画先后关系。

转载地址:http://txooa.baihongyu.com/

你可能感兴趣的文章
《图解TCP_IP_第5版》读书笔记
查看>>
SQL Server 2005 2008 xp_cmdshell 恢复与禁用
查看>>
RMAN Complete Recovery
查看>>
[ CodeForces 1064 B ] Equations of Mathematical Magic
查看>>
spring常用注解及用法总结
查看>>
Java获取文件后缀名
查看>>
NYOJ-15:括号匹配(二)
查看>>
首次记录在案的
查看>>
Brup Suite 渗透测试笔记(六)
查看>>
Android编译安装失败解决办法
查看>>
数的划分递归做法
查看>>
Java Base64 类
查看>>
成长路上如何快速升级?你需要强大的自我驱动力
查看>>
pca
查看>>
php实战案例
查看>>
Python爬虫6-利用ProxyHandler设置代理服务器
查看>>
hive连接MySQL报错
查看>>
SQL Server 数据库用户权限设置
查看>>
爱的链条
查看>>
AC日记——网络最大流 洛谷 P3376
查看>>