码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2015-01-20 17:55:02      阅读:124      评论: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
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!