首页 > 其他 > 详细

关于标签栏隐藏和显示的问题

时间:2015-01-20 17:53:47      阅读:1192      评论:0      收藏:0      [点我收藏+]

开发项目的过程中遇到这么一个问题:

一个标签控制器包装了两个导航控制器,两个导航控制器分别包装了一个视图控制器(里面主要是UITableView)

当你点击cell的时候推送到另一个界面,需要隐藏标签栏,(因为标签栏覆盖了下面的输入框),回来的时候显示标签栏(这个没什么问题)

当你点击标签栏上的另一个标签再点会回来的时候标签栏会隐藏(我写的错误代码,就不介绍了)

正确思路:(-_-||用这个做出来了应该是正确的吧)

首先需要了解这个属性:(当推送的时候隐藏,默认为NO)

hidesBottomBarWhenPushed

其次,了解UIViewContrllor的生命周期:

- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];
 
}
- (void)viewWillDisappear:(BOOL)animated {
    [super viewWillDisappear:animated];
}
-(void)viewDidDisappear:(BOOL)animated
{
    [super viewDidDisappear:animated];
//    self.hidesBottomBarWhenPushed = NO;
    
}
-(void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:animated];
//    self.hidesBottomBarWhenPushed = YES;
    
}

看到这里,大家可能就知道我以前犯的错误了吧,我将显示和隐藏写在视图将要(显示,消失里面)

已经显示:(推送隐藏)-(推送了)-隐藏

已经消失: (推送不隐藏)- 避免当在标签栏上点击回来的时候标签栏是隐藏的

额,测试了一下,写在已经消失和将要消失里面没有区别(-_-||)

 self.hidesBottomBarWhenPushed = YES;

不能写在将要显示里面哦,标签栏切换过来会有问题,


关于标签栏隐藏和显示的问题

原文:http://blog.csdn.net/u011032334/article/details/42921245

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!