美文网首页00『 基础知识 』
动画隐藏tabbar(必须放在对应控制器里)

动画隐藏tabbar(必须放在对应控制器里)

作者: 爱恨的潮汐 | 来源:发表于2016-08-22 17:28 被阅读62次

动画隐藏tabbar(必须放在对应控制器里)

- (void)viewWillAppear:(BOOL)animated{

[super viewWillAppear:animated];

[self.navigationController setNavigationBarHidden:NO animated:NO];

[self hiddenTabbar];

}

- (void)viewWillDisappear:(BOOL)animated{

[super viewWillDisappear:animated];

[self showTabbar];

}

//动画影藏tabbar

-(void)hiddenTabbar{

//增加一个试图即将出现时的方法,并在此设置把tabBar下移,移除整个屏幕,相当于消失了

NSArray *arr1=self.tabBarController.view.subviews;

UITabBar *tabBarView1=[arr1 objectAtIndex:1];

//第一个视图就是全屏,不需要把高度撑满,所以可以不做任何设置

[UIView animateWithDuration:0.5 animations:^{

tabBarView1.frame=CGRectMake(0, SCREEN_HEIGHT, SCREEN_WIDTH, 49);

}];

}

//动画展示tabbar

-(void)showTabbar{

//增加一个viewDidAppear,把下移的tabBar再上移,相当于还原到原地

[UIView animateWithDuration:0.5 animations:^{

NSArray *arr2=self.tabBarController.view.subviews;

UITabBar *tabBarView2=[arr2 objectAtIndex:1];

tabBarView2.frame=CGRectMake(0, SCREEN_HEIGHT-49, SCREEN_WIDTH, 49);

}];

}

相关文章

网友评论

    本文标题:动画隐藏tabbar(必须放在对应控制器里)

    本文链接:https://www.haomeiwen.com/subject/htrgsttx.html