如何在iOS App中转到“主页”?

时间:2013-03-13 05:32:05

标签: ios objective-c uinavigationcontroller

我有UIViewControllerUITabBarControllerUIViewController包含5个按钮,UITabBarController包含5个标签。

通过点击第一个按钮应用,第一个选中的标签显示TabBarController,第二个 - TabBarController第二个标签,依此类推......

为了准备这个,我已经为每个按钮使用了Modal-segue

一切都运作良好。

现在我需要在TabBarController的{​​{1}}上创建“主页”按钮(可能是以编程方式),这将执行“回家视图”操作。

编辑了更多详情

{见下面的截图}

  1. 初始UIViewController
  2. 的UITabBarController
  3. NavigationControllers
  4. UIViewControllers
  5. 1 2 之间有两个模态区段(两个按钮 - 两个区段)

    在UIViewController的 prepareForSegue 中:

    UINavigationBar

    在UITabBarController中的 viewDidLoad 中:

    - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
    {
        AppDelegate *d = (AppDelegate *)[[UIApplication sharedApplication] delegate];
        if ([segue.identifier isEqualToString:@"s1"]) {
            d.initialTab = 0;
        }
        else if ([segue.identifier isEqualToString:@"s2"]) {
            d.initialTab = 1;
        }
    }
    

    这是有效的!

    但我需要回到主页。所以如果在TabBarController之后有一个NavigationController我想在NavigationBar中创建一个按钮。

    enter image description here

1 个答案:

答案 0 :(得分:1)

我建议您将一个导航控制器作为父级。
然后,将您的启动视图添加为它的根视图。

Application Flow Suggestion

在主视图控制器页面上,

- (void)viewWillAppear:(BOOL)animated
{
   self.navigationController.navigationBarHidden = NO;
}

因此,它会隐藏您的主导航。因此无需担心此内部导航流程。
对于内部导航,您已经使用了不同的导航控制器。

使用代码:

[self.parentViewController.navigationController popToRootViewControllerAnimated:YES];

你将成为应用程序的根本,它将扩展所有在应用程序中堆叠的视图控制器。

希望你能理解流量和流量如果你感觉良好,将适用。

享受编码 感谢。