【问题标题】:When Press Tabbar But it's not going to it"s RootviewcontrollerWhen Press Tabbar But it's not going to it"s Rootviewcontroller
【发布时间】:2011-12-24 07:47:45
【问题描述】:

当我按下某个 Tab 时,它不会转到它的 rootviewcontroller,

当用户更改选项卡时,对于选定的选项卡,我想将其推送到其顶级控制器。

我已经实现了这个方法但是不行,

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

这是怎么回事?

我该怎么做?

【问题讨论】:

标签: iphone objective-c ios4 uitabbarcontroller


【解决方案1】:

假设方法被调用(如果没有,你应该设置 UITabBarController 委托),你可能收到 UINavigationController(它是 UIViewController 的子类)作为 viewController,你可以通过记录它来检查:

-(void)tabBarController:(UITabBarController *) tabBarController didSelectViewController : (UIViewController *)viewController
{
   NSLog(@"didSelect %@", viewController);
   [viewController.navigationController popToRootViewControllerAnimated:NO];
}

如果是这样,viewController.navigationController 可能会为零,你应该这样做:

-(void)tabBarController:(UITabBarController *) tabBarController didSelectViewController : (UIViewController *)viewController
{   
    if ([viewController isKindOfClass:[UINavigationController class]])
        [(UINavigationController*)viewController popToRootViewControllerAnimated:NO];
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-11-09
    • 1970-01-01
    • 2022-12-01
    • 2022-12-28
    • 2019-09-21
    • 2022-12-01
    • 2023-01-06
    相关资源
    最近更新 更多