【问题标题】:App organization and UISplitViewController应用组织和 UISplitViewController
【发布时间】:2012-10-11 16:45:33
【问题描述】:

我的应用组织有问题。 我想要一个带有四个按钮的主页视图。每个都将视图推送到 splitView。

所以在我的主视图中,我不希望在纵向或横向模式下显示任何 masterView。 但是在我接下来的四个视图中,我希望 masterView 随时显示,并且我希望能够有一个返回按钮来返回主视图。

我的问题是如何实现这样的目标?

  • 我是否必须将我的主视图创建为应用程序的 rootViewController,然后为每个按钮创建一个 splitView。然后创建一个后退按钮来关闭 splitView。
  • 我是否必须创建一个单独的 splitView 并使用主视图显示。我不知道如何在某些视图上以纵向模式隐藏我的大师班并在其他视图上显示它。

【问题讨论】:

    标签: ipad uisplitviewcontroller


    【解决方案1】:

    UISplitViewController 必须是根视图控制器。

    因此,您将使用包含四个按钮的 homeViewController 启动您的应用程序,每个按钮都会告诉您的应用程序委托从根目录中删除主视图控制器并创建一个 splitViewController 并将其设为根目录。

    显然,要返回,您需要在 splitViewController 上设置一个按钮,告诉应用程序委托删除 splitViewController 并替换为新加载的 homeViewController。


    从情节提要中获取 viewController 并将其附加到窗口的示例

    window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
    UIViewController *homeViewController = [mainStoryboard instantiateViewControllerWithIdentifier:@"HomeViewController"];
    [window addSubview:homeViewController.view];
    [window makeKeyAndVisible];
    

    【讨论】:

    • 听起来不错,但我是否告诉窗口 rootviewController 从情节提要切换?我必须使用什么样的 segue 以及从哪里使用?
    • 如果您使用故事板,我会使用多个故事板,一个用于您的四个拆分视图中的每一个,另一个用于您的初始根。
    猜你喜欢
    • 2014-04-02
    • 2011-11-05
    • 1970-01-01
    • 2012-01-06
    • 2017-06-17
    • 1970-01-01
    • 2011-02-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多