2012-06-12 138 views
2

在我的应用程序中,我在3个选项卡中使用带有5个选项卡的tabbar控制器,当点击一个按钮时,它会调用一个View Controller。我为这3个选项卡使用相同的视图控制器,所以我在调用不同选项卡中的相同视图时出现问题,所以在更改选项卡时我不想调用ViewWillAppear方法。所以我有什么做?或者如何找到tabbar控制器的上一个选定的索引?UITabbar控制器

由于提前

+0

最好是由取决于self.tabController改变为使用不同的视图控制器为每个标签如果u有不同的UI为每个标签或者明智地使用一个视图控制器。 selectedIndex –

+0

雅,使用像我一样创建相同的视图控制器不同的名称权? 我的应用程序与Facebook类似,所以,当他在两个制表我得到problem.So我想找到以前的TabBar指数开相同的外形@ safecase –

+0

可以使用的TabBar:didSelectItem:在实施UITabBarDelegate: - (void)tabBar:(UITabBar *)tabBar didSelectItem:(UITabBarItem *)item –

回答

0

我觉得你不熟悉iOS开发。

  1. 在TabbarController中,我们可以指定尽可能多的UIViewcontroller/UINavigationController对象。
  2. 如果我们需要重新使用UIViewcontroller,则需要使用属性对象来标记视图控制器。
  3. 您需要为不同的选项卡使用不同的UIViewController实例。
  4. 显示一个UIViewController时,它的viewWillAppear被解雇了。我们无法删除此行为。但在大多数情况下,我们可以通过viewDidLoad来处理这种情况(对于视图控制器的实例,它会被调用一次)。
  5. 如果我们需要跟踪之前选择的选项卡项目,我们需要通过使用共享类或静态变量来做我们自己的解决方案。

感谢,

纳温单

+0

我只使用不同的实例,我知道ViewWillAppear会害怕。使用tabbar索引,我想在ViewWillAppear中给出一个条件好吗? @Naveen shan –

相关问题