界面转场动画时导航栏的处理

前言

之前写的一个转场动画库WXSTransition受到挺多开发者喜欢的。但是也存在着一些各种各样的问题,最近抽出一些时间对WXSTransition存在的一些问题进行修复。
其中比较明显的问题是在转场动画过程中,导航栏的存在让动画看起来不够顺畅,自然。导航栏的使用频率很高,所以这是一个比较大的问题。

解决

发现这个问题的第一个想法是要让导航栏做相应的动画,但是在实践过程中发现,确实有挺多坑,一个是导航栏相关API比较少,一个是要进行相对应的动画比较吃力不讨好。
最后采用一个性价比比较高的方案,在适合的时机隐藏、显示导航栏。
- (void)animateTransition:(id <UIViewControllerContextTransitioning>)transitionContext方法隐藏

- (void)animationEnded:(BOOL) transitionCompleted方法中显示。
效果如图:

fragment.gif

spread.gif

viewMove.gif

其实在网上可以看到许多对转场过程中对导航栏的处理,可以根据自身的需求参照网上的方法进行导航栏自定义动画,例如渐变等。为了不与自定义动画冲突,我加上了autoShowAndHideNavBar属性,将其设置为NO时边不会自动隐藏,显示,就不会与自定义动画冲突。

代码在我的Github上WXSTransion

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,420评论 25 709
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,726评论 4 61
  • 尼各马可伦理学第三卷 第三卷分为行为与具体的德性两个部分,在行为部分主要探讨了意愿行为、选择、考虑、希望、德性、恶...
    成人的道阅读 9,210评论 5 5
  • 我的性格有时候像我的微信名字一样,比较包子,但凡事情喜欢忍让,多一事不如少一事,自己喜欢的东西很少去争取。 我曾经...
    roseling于北京阅读 1,508评论 0 1
  • 思路(代码优化了该思路) 初始化:count = 0 遍历二维数组:遇到'X'时判断当前块的上方和左方存在'X'与...
    XYZ7阅读 1,706评论 0 0

友情链接更多精彩内容