1

我正在尝试在我的 iPad 应用程序中创建一个自定义侧边栏导航窗格,例如用于 iPad 的 Instapaper。在Scott Sherwood的一些优秀教程的帮助下,我能够创建自定义侧边栏并在视图控制器之间切换。

我使用一个根视图控制器实现了这一点,其中我有两个视图 - 一个是选项卡视图,另一个代表与所选选项卡关联的内容,就像这样......

在此处输入图像描述

每当我选择选项卡时,我只需向 中添加一个子视图Root View Controller,就像这样......

@implementation RootViewController

//
// some code here
//

#define TABBAR_WIDTH 80.0F
- (void)buttonTapped:(UIButton *)aButton
{
    UIViewController *newVC = [self.storyboard instantiateViewControllerWithIdentifier:@"SomeView"];
    [newVC.view setFrame:CGRectMake(TABBAR_WIDTH, 0, self.view.bounds.size.width - TABBAR_WIDTH, self.view.bounds.size.height)];
    [self addSubView:newVC.view];
}

现在我要做的是将新视图推送到Contents不基于选项卡选择而是基于内容视图中的某些交互的新视图中。我想出的方法是在超级视图中添加另一个子视图。但是,在这种情况下,我将不得不自己实现视图之间的推送、弹出、后退按钮和动画。

我想知道我是否可以使用 UINavigationController 来实现这个场景(以便自动神奇地处理推送、弹出、后退按钮)。

有人可以对这个话题有所了解吗?甚至可以简要概述一下如何在Instapaper iPad 应用程序中实现这一点会有所帮助。

4

1 回答 1

2

在这里,您需要在容器视图中导航。

所以你可以用这个东西:

  1. 让一个 navigationController(alloc-init-set frame-navigation bar hidden 等)将 content1 视图控制器作为根控制器。
  2. 在 Content1 视图控制器中,在按钮点击事件上,只需将导航控制器推送到 Content2 视图控制器,并对弹出事件执行相同操作

Alloc - 在根控制器中初始化导航控制器,在 xib 中有自定义选项卡和容器视图...

注意:在添加任何其他视图之前清除您的容器视图。

我已经完成了这个场景,所以它对我来说工作正常。

希望这是您需要的...

享受编码:)

于 2012-07-30T10:03:55.697 回答