如何使用tabbar和navigationController时调用viewWillAppear

原创 2011年03月16日 17:01:00

采用如下方式:

App—>RootViewController—>UINavigationController—>UIViewController

发现UIViewController接收不到viewWillAppear相关的四个函数。

经过多次试验,发现如下方法,可以解决:

在RootViewController的Init中加入如下代码(红色字体)

tabBarController.viewControllers = [NSArray arrayWithObjects:tabNav1,tabNav2, nil];
self.tabBarController.selectedViewController = tabNav1;

同时添加:

- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];
    [self.tabBarController.selectedViewController viewWillAppear:animated];
}

- (void)tabBarController:(UITabBarController *)tabBarController didSelectViewController:(UIViewController *)viewController {
    [viewController viewWillAppear:NO];
}

 

为什么没有调用,可参考:

http://www.cocoachina.com/bbs/simple/?t23256.html

iOS使用UITabbarController跳转(push)界面,如何自动隐藏底部tabbar?

一、首先简单地讲一下UITabbarController的使用方法,直接上代码: //初始化tabbarcontroller - (void)setTabbarController{ NSA...
  • u011452278
  • u011452278
  • 2016年10月19日 14:18
  • 2482

viewWillAppear:等无法调用的总结

今天也遇到了这样的问题。 产生原因是用了UINavigationController.  将UINavigationController的view作为subview添加到了其他viewCont...
  • ch_soft
  • ch_soft
  • 2012年06月24日 10:59
  • 8185

viewWillDisappear,viewWillAppear不调用的解决方法

产生原因是用了UINavigationController.  将UINavigationController的view作为subview添加到了其他viewController的view中...
  • u011374880
  • u011374880
  • 2016年03月10日 14:44
  • 2778

iOS使用UITabbarController跳转(push)界面,如何自动隐藏底部tabbar?

一、首先简单地讲一下UITabbarController的使用方法,直接上代码: //初始化tabbarcontroller - (void)setTabbarController{ NSA...
  • u011452278
  • u011452278
  • 2016年10月19日 14:18
  • 2482

视图控制对象生命周期-init、viewDidLoad、viewWillAppear、viewDidAppear、viewWillDisappear等的区别及用途

iOS视图控制对象生命周期-init、viewDidLoad、viewWillAppear、viewDidAppear、viewWillDisappear、viewDidDisappear的区别及用途...
  • u011545443
  • u011545443
  • 2014年02月27日 09:56
  • 1093

iOS开发 容易犯错的知识点和不错的细小知识点(持续更新)

1.UIView下,UIImageView和UILabel
  • humingtao2013
  • humingtao2013
  • 2014年04月18日 00:37
  • 8396

iOS开发视图控制器(ViewController)调用[super viewXXX]的简单理解

iOS开发视图控制器(ViewController)调用[super viewXXX]的简单理解本人刚刚进入iOS开发行业,许多理解可能存在错误,希望各位老司机看到能够指出。那么言归正传,记得在学习i...
  • Cold_of_22F
  • Cold_of_22F
  • 2016年03月16日 15:16
  • 1208

控制器跳转和视图切换之NavigationController,UITabBarController,模态

在iOS开发中视图的切换是很频繁的,独立的视图应用在实际开发过程中并不常见,除非你的应用足够简单。在iOS开发中常用的视图切换有三种,今天我们将一一介绍: UITabBarControllerUIN...
  • u011146511
  • u011146511
  • 2016年04月26日 12:20
  • 2222

iOS原生项目嵌入Cordova

MAC OS  High Sierra系统版本10.13Xcode版本Version 9.0.1 (9A1004)对于iOS原生项目嵌入cordova的一些记录,废话不说,开始正题!嵌入cordova...
  • yl19920713
  • yl19920713
  • 2017年11月09日 10:57
  • 33

ios调用dismissViewController的一个小陷阱

我们的APP从启动到进入主页面,是通过presentViewController构造了一个ViewController序列,类似于首页 -> 登陆页 -> 启动加载页 -> 主页面 其中,在启动加载...
  • kyfxbl
  • kyfxbl
  • 2014年12月17日 23:30
  • 3069
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何使用tabbar和navigationController时调用viewWillAppear
举报原因:
原因补充:

(最多只允许输入30个字)