为了账号安全,请及时绑定邮箱和手机立即绑定

UINavigationController自定义navigationbar的动画

UINavigationController自定义navigationbar的动画

慕容森 2019-04-07 09:37:42
假如前一个页面的navigationbar隐藏,push到栈里面的下一个页面需要显示navigationbar,如果要实现push过程中,navigationbar从屏幕上端从上到下滑进屏幕,pop到上一级的时候,navigationbar从下到上滑出屏幕,是不是不能用原生的navigationbar?
查看完整描述

2 回答

?
白猪掌柜的

TA贡献1893条经验 获得超10个赞

如果你需要比较复杂的NavigationBar动画或样式,建议你自定义NavigationBar
说道你你问题里的这个方法,我想最直接的办法还是重写UINavigationController
                            
查看完整回答
反对 回复 2019-04-07
?
qq_笑_17

TA贡献1818条经验 获得超7个赞

这个不就是viewcontroller的UIModalTransitionStyleFlipHorizontal这种方式?nc可以做容器包含vc,这样两个vc就可以实现。[self.navigationControllersetNavigationBarHidden:NOanimated:YES];这个可以得到想要的效果,未自定义,不知是否适合楼主要求。然后就是自定义navigationbar。
花了几分钟写了个简单方法实现自定义动画
如何让navigationbar上下移动,修改flag即可。__blockBOOLflag=YES;//0up1down
UINavigationBar*navbar=[[selfnavigationController]navigationBar];
[UIViewanimateWithDuration:0.3animations:^(void)
{
if([[UIApplicationsharedApplication]respondsToSelector:@selector(setStatusBarHidden:withAnimation:)]){
[[UIApplicationsharedApplication]setStatusBarHidden:flagwithAnimation:NO];
}
if(flag){
navbar.frame=CGRectMake(0,-44,320,44);
}
else{
navbar.frame=CGRectMake(0,20,320,44);
}
}];
                            
查看完整回答
反对 回复 2019-04-07
  • 2 回答
  • 0 关注
  • 546 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信