2011-12-26 50 views
-1

我读过几乎回答我的问题的互联网帖子,但我不能放在一起。我有一个双tab iPhone应用程序,与两个相关的视图控制器,h,m,xibs等。 tabview1上有一个按钮,我想通过它来以编程方式切换到tabview2。我已经阅读了关于设置一个根视图控制器来管理这个问题的讨论,但是这些示例并没有提供足够的细节让我弄清楚,并且似乎建议我切换到基于导航的应用程序,而我真的不想这样做。任何人都有耐心向我解释?我怎样才能切换到iOS iPhone的tabview2与tabview1上的按钮

回答

0

那么,我处理它的方式是让我的AppDelegate(它拥有tabController)处理它。因此,在调用者,我用:

[(AppDelegate_Shared *)[[UIApplication sharedApplication] delegate] popToMainView]; 

,然后在的appDelegate:

-(void) popToMainView { 
    UITabBarController * myTabBar = self.tabBarController; 
    myTabBar.selectedIndex = 0; //jump to first view. 
    [[myTabBar.viewControllers objectAtIndex:0] popToRootViewControllerAnimated:NO]; 
     // this last line necessary iff you know firstView has a navcontroller and you want to be at the root 
} 
+0

TX多麦克沃思。您的selectedIndex让我觉得可能有更简单的方法。在tabview1的按钮逻辑中,我只是单独做了这个,并且瞧,它完全按照我的意愿改变了视图。没有代表,没有特殊功能。 – 2011-12-27 03:20:31

+0

你是对的,虽然这意味着tabView1知道它的父母(它是一个tab控制器,哪个索引是主要的等)的细节,这真的不是很好的结构。哦,如果有帮助,随时标记回答的问题! – mackworth 2011-12-27 16:46:53